/*
 * Application stylesheet
 *
 * The only stylesheet loaded by the static site. Feature sections are kept
 * together here so common classes have one source of truth.
 */
@import url('https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=DM+Sans:opsz,wght@9..40,400;9..40,500;9..40,600;9..40,700&family=Playfair+Display:ital,wght@0,600;0,700;1,600;1,700&display=swap');

* { box-sizing: border-box; }

body {
  margin: 0;
  font-family: 'DM Sans', sans-serif;
}

button,
input,
textarea,
select { font: inherit; }

a { color: inherit; text-decoration: none; }

.topbar,
.content-nav { display: flex; align-items: center; justify-content: space-between; }

/* One application-level header; pages supply only controls unique to their workflow. */
.site-header{height:68px;position:sticky;top:0;z-index:100;display:flex;align-items:center;gap:24px;padding:0 24px;background:#0a0a0a;border-bottom:1px solid #292929;color:#fff}
.site-brand{font-size:22px;font-weight:800;letter-spacing:-.75px}.site-brand span{display:inline-block;width:8px;height:8px;margin-left:4px;border-radius:50%;background:#ff4d9d}
.site-navigation{display:flex;align-items:center;gap:14px}.site-navigation a{color:#b7b7b7;font-size:12px;font-weight:700}.site-navigation a:hover{color:#fff}.site-navigation .free-pill{color:#0a0a0a}
.site-header-controls{margin-left:auto}.site-header-controls:empty{display:none}
.language-selector{position:relative;order:3;color:#b7b7b7;font-size:11px}.language-selector summary{cursor:pointer;list-style:none}.language-selector summary::-webkit-details-marker{display:none}.language-selector summary::after{content:"⌄";margin-left:6px;color:#ff4d9d}.language-menu{position:absolute;right:0;top:calc(100% + 14px);z-index:110;display:grid;min-width:170px;padding:8px;background:#151515;border:1px solid #333;box-shadow:0 16px 32px rgba(0,0,0,.35)}.language-menu a{padding:8px 10px;color:#c9c9c9;font-size:12px}.language-menu a:hover{background:#242424;color:#fff}
[dir="rtl"] .site-header,[dir="rtl"] .site-footer-main,[dir="rtl"] .site-footer-meta{direction:rtl}[dir="rtl"] .language-menu{right:auto;left:0}[dir="rtl"] .rosemai-credit:hover{transform:translateX(-2px)}
/* The application header is the only site navigation. */
.site-header + .match-page .builder-header,.site-header + .account-page .builder-header{display:none}

.site-footer{padding:54px 32px 22px;background:#0a0a0a;border-top:1px solid #292929;color:#fff}
.site-footer-main,.site-footer-meta{width:min(100%,1160px);margin:0 auto}.site-footer-main{display:flex;justify-content:space-between;gap:48px;padding-bottom:48px}
.site-footer-brand p{max-width:320px;margin:14px 0 0;color:#929292;font-size:13px;line-height:1.5}.site-footer-links{display:flex;flex-wrap:wrap;justify-content:flex-end;align-content:flex-start;gap:13px 26px;max-width:490px}
.site-footer-links a{color:#c7c7c7;font-size:12px;font-weight:700}.site-footer-links a:hover{color:#ff4d9d}.site-footer-meta{display:flex;justify-content:space-between;gap:20px;padding-top:17px;border-top:1px solid #292929;color:#777;font:10px 'DM Mono',monospace;letter-spacing:.04em}
.rosemai-credit{display:inline-flex;align-items:center;gap:10px;margin-top:24px;color:#c7c7c7;font:600 14px 'DM Sans',sans-serif}.rosemai-credit img{width:32px;height:32px;border-radius:9px;object-fit:cover}.rosemai-credit b{color:#fff}.rosemai-credit:hover{color:#fff;transform:translateX(2px)}

.eyebrow {
  margin: 0 0 20px;
  color: var(--red);
  font: 500 11px 'DM Mono', monospace;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.quiet-link {
  padding: 10px 16px;
  border-radius: 999px;
  background: #ff4d9d;
  color: #0a0a0a;
  font-size: 13px;
  font-weight: 800;
}

.button {
  display: inline-flex;
  align-items: center;
  gap: 30px;
  padding: 15px 20px;
  border-radius: 3px;
  font-size: 14px;
  font-weight: 700;
  transition: transform .2s;
}

.button:hover { transform: translateY(-2px); }
.button-primary { background: var(--red); color: #0a0a0a; }
.button b { font-size: 17px; }

@keyframes rise {
  from { opacity: 0; transform: translateY(16px); }
  to { opacity: 1; transform: none; }
}

/* mockup */
/* Dark visual system matching the supplied mockup. */
:root{--ink:#0a0a0a;--paper:#0a0a0a;--muted:#b7b7b7;--line:#292929;--red:#ff4d9d}
body{background:#0a0a0a;color:#fff}
.landing-shell{background:#0a0a0a;max-width:1224px;margin:auto;padding:28px 32px 80px}
.brand{color:#fff;font-size:22px;letter-spacing:-.75px;font-weight:800}
.brand span{background:#ff4d9d}
.free-pill,.account-pill{font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:8px 12px;border-radius:999px}
.free-pill{background:#ff4d9d;color:#0a0a0a}
.account-pill{border:1px solid #333;color:#e8e8e8}
.nav-actions{gap:8px}
.hero{padding:96px 0 0;animation:rise .5s ease both}
.hero h1{font-size:clamp(64px,13vw,80px);line-height:.88;letter-spacing:-.045em;}
.hero h1 em{font-family:inherit;font-style:normal}
.hero-copy{color:#b7b7b7;max-width:560px;font-size:20px;line-height:1.45;margin:28px 0 0}
.action-tiles{margin-top:56px;display:grid;grid-template-columns:repeat(2,minmax(280px,1fr));gap:20px;max-width:860px}
.action-tile{min-height:220px;border-radius:24px;padding:30px;display:flex;flex-direction:column;align-items:flex-start;gap:0;transition:transform .2s,border-color .2s}
.action-tile:hover{transform:translateY(-4px)}
.action-tile span{font-size:34px;line-height:1}
.action-tile strong{font-size:30px;font-weight:800;letter-spacing:-.03em;margin-top:auto}
.action-tile small{font-size:15px;line-height:1.35;margin-top:6px}
.create-tile{background:#ff4d9d;color:#0a0a0a}
.create-tile small{color:rgba(10,10,10,.7)}
.edit-tile{background:#141414;border:1px solid #333;color:#fff}
.edit-tile span{color:#ff4d9d}
.edit-tile small{color:#9a9a9a}
.trust-line{margin-top:10px;border:0;padding:0;color:#7c7c7c;font:14px 'DM Sans',sans-serif;text-transform:none;justify-content:flex-start;gap:28px 44px}

.app-shell{background:#0a0a0a;color:#fff}
.editor-bar{background:rgba(10,10,10,.9);border-color:#1c1c1c}
.doc-status{color:#aaa}
.doc-status i{background:#ff4d9d}
.export{background:#ff4d9d;color:#0a0a0a;border-radius:999px;padding:11px 22px}
.editor-layout{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.section-nav{display:none}
.form-panel{background:#0a0a0a;color:#fff;padding:32px 32px 96px;max-width:640px;margin-left:auto;width:100%}
.form-head h1{color:#fff;font-size:30px;letter-spacing:-.03em;margin-bottom:26px}
.form-head .eyebrow{color:#ff4d9d}
.photo-row{border-color:#222}
.avatar{border-color:#3a3a3a;color:#aaa}
.photo-row p{color:#8c8c8c}
.field span,.experience label span{color:#cfcfcf}
.field input,.field textarea,.experience input,.experience textarea{background:#141414;border:1px solid #2a2a2a;border-radius:12px;color:#fff;padding:13px 14px}
.experience{background:#0e0e0e;border:1px solid #222;border-radius:16px;padding:16px;margin-top:14px}
.experience label span{margin-top:0}
.experience .wide{grid-column:1/-1}
.drag{left:-23px;color:#777}
.remove{top:3px;color:#ff6b6b}
.add-button{background:#141414;border:1px solid #2a2a2a;color:#fff;border-radius:999px}
.canvas-panel{background:#111;border-left:1px solid #1c1c1c;padding:26px 26px 60px}
.canvas-tools{color:#7c7c7c}
.paper{max-width:480px;min-height:679px;border-radius:6px;padding:42px 40px;box-shadow:0 24px 60px rgba(0,0,0,.5)}
.paper h2{font-size:32px}
.paper h3{color:var(--accent)}
.pdf-sidebar{background:#0a0a0a;border-color:#1c1c1c;color:#fff}
.pdf-sidebar>a,.pdf-sidebar>p{color:#b7b7b7}
.pdf-stage{background:#111}
.upload-zone{background:#101010;border-color:#3a3a3a}
.tool-list{border-color:#2a2a2a}
.tool-list button{color:#fff}
.empty-pdf{color:#b7b7b7}
@media(max-width:960px){.editor-layout{grid-template-columns:1fr}
.canvas-panel,.form-panel{grid-column:auto}
.canvas-panel{min-height:760px}
}
@media(max-width:650px){.landing-shell{padding:24px 22px 60px}
.free-pill,.account-pill{font-size:10px;padding:7px 9px}
.hero{padding-top:80px}
.hero-copy{font-size:16px}
.action-tiles{grid-template-columns:1fr}
.trust-line{display:grid;grid-template-columns:1fr 1fr;gap:18px;font-size:12px}
.form-panel{padding:34px 22px}
.canvas-panel{padding:20px 12px}
}


/* builder */
.builder-page{min-height:100vh;background:#0a0a0a;color:#fff}
.builder-header{height:68px;position:sticky;top:0;z-index:5;display:flex;align-items:center;justify-content:space-between;padding:0 24px;background:rgba(10,10,10,.9);border-bottom:1px solid #1c1c1c}
.local-note{font:12px 'DM Mono',monospace;color:#999}
.local-note::first-letter{color:#ff4d9d}
.download-button{border:0;border-radius:999px;padding:11px 20px;background:#ff4d9d;color:#0a0a0a;font-weight:800;cursor:pointer}
.draft-snackbar{position:fixed;right:24px;bottom:24px;z-index:120;display:flex;align-items:center;gap:14px;width:min(420px,calc(100vw - 40px));padding:13px 12px 13px 16px;border:1px solid #383838;border-radius:14px;background:rgba(20,20,20,.97);box-shadow:0 16px 42px rgba(0,0,0,.45);opacity:0;transform:translateY(14px);transition:opacity .18s ease,transform .18s ease}
.draft-snackbar.is-visible{opacity:1;transform:translateY(0)}
.draft-snackbar>div{min-width:0;display:grid;gap:3px;flex:1}
.draft-snackbar strong{color:#fff;font-size:12px;letter-spacing:-.01em}
.draft-snackbar span{color:#9a9a9a;font-size:11px;line-height:1.35}
.draft-snackbar button{font:700 11px 'DM Sans',sans-serif;cursor:pointer}
.draft-clear{flex:none;border:0;border-radius:999px;padding:8px 11px;background:#ff4d9d;color:#0a0a0a;white-space:nowrap}
.draft-dismiss{display:grid;flex:none;place-items:center;width:28px;height:28px;padding:0;border:0;border-radius:50%;background:transparent;color:#9a9a9a;font-size:19px!important;line-height:1}.draft-dismiss:hover{background:#272727;color:#fff}.draft-snackbar button:focus-visible{outline:2px solid #fff;outline-offset:2px}
.builder-grid{display:grid;grid-template-columns:minmax(390px,1fr) minmax(490px,1fr) 244px;min-height:calc(100vh - 68px)}
.builder-form{max-width:640px;width:100%;margin-left:auto;padding:32px 32px 90px}
.form-title p,.builder-section-head span{font:800 12px 'DM Mono',monospace;letter-spacing:.12em;text-transform:uppercase;color:#ff4d9d}
.form-title h1{font-size:30px;letter-spacing:-.04em;margin:7px 0 27px}
.builder-form label{font-size:12px;font-weight:700;color:#cfcfcf}
.builder-form input,.builder-form textarea{display:block;width:100%;margin-top:7px;padding:13px 14px;background:#141414;border:1px solid #2a2a2a;border-radius:12px;color:#fff;outline:0;font-size:14px}
.builder-form textarea{min-height:75px;line-height:1.65;resize:vertical}
.builder-form .profile-field textarea,.builder-form .experience-description-field textarea{min-height:120px}
.resume-paper [data-output="profile"],.resume-paper [data-output-experience] p,.resume-paper [data-output-skills]{white-space:pre-line}
.builder-form input:focus,.builder-form textarea:focus{border-color:#ff4d9d}
.field-grid,.entry-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.field-grid .wide,.entry-grid .wide{grid-column:1/-1}
.builder-section-head{display:flex;align-items:center;justify-content:space-between;margin-top:35px}
.builder-section-head>div{display:flex;align-items:center;gap:6px}
.builder-section-head button{border:1px solid #2a2a2a;border-radius:999px;background:#141414;color:#fff;padding:7px 13px;cursor:pointer;font-size:12px;font-weight:700}
.builder-section-head .section-order{width:30px;padding:7px 0;font-size:14px}
.builder-section-head .section-order:disabled{opacity:.35;cursor:not-allowed}
.builder-entry{position:relative;margin-top:14px;padding:17px;background:#0e0e0e;border:1px solid #222;border-radius:16px;cursor:grab}
.builder-entry.dragging,.skill-input.dragging{opacity:.45}
.drag-handle{position:absolute;left:-28px;top:22px;color:#777;border:0;background:transparent;cursor:grab;font-size:16px}
.remove-entry{position:absolute;right:8px;top:7px;border:0;background:transparent;color:#ff6b6b;font-size:19px;cursor:pointer}
.skills-editor{display:grid;gap:14px;margin-top:14px}
.skill-input{position:relative;display:flex;gap:9px;margin:0;cursor:grab}
.skill-input .drag-handle{position:static;width:26px}
.skill-input input{margin:0}
.skill-input .remove-entry{position:static;flex:0 0 38px;border:1px solid #2a2a2a;border-radius:10px}
.preview-panel{grid-column:2;grid-row:1;position:sticky;top:68px;height:calc(100vh - 68px);overflow:auto;background:#0b0b0b;border-left:1px solid #1c1c1c;padding:25px}
.mobile-builder-actions,.mobile-preview-bar,.mobile-design-toggle,.template-sheet-close{display:none}


/* ATS-safe templates: all content remains in one linear document flow. */
.template-picker{grid-column:3;grid-row:1;position:sticky;top:68px;height:calc(100vh - 68px);min-height:0;background:#0e0e0e;border-left:1px solid #1c1c1c;display:flex;flex-direction:column;z-index:2}
.template-sheet-handle{display:none}.accent-picker{padding:20px 18px 16px;border-bottom:1px solid #1c1c1c}.selector-label,.template-picker-head span{font:500 11px 'DM Mono',monospace;letter-spacing:.16em;text-transform:uppercase;color:#f5f5f5}.accent-options{display:grid;grid-template-columns:repeat(3,1fr);gap:14px 8px;margin-top:16px}.swatch{min-width:0;padding:0;border:0;background:transparent;color:#8a8a8a;cursor:pointer;font:400 10px 'DM Mono',monospace}.swatch span{display:block;width:34px;height:34px;margin:0 auto 6px;border-radius:50%;background:var(--swatch);box-shadow:0 0 0 1px #3a3a3a;transition:box-shadow .15s}.swatch.active span{box-shadow:0 0 0 3px #0b0b0b,0 0 0 5px var(--swatch)}.swatch em{font-style:normal}.swatch:focus-visible,.template:focus-visible{outline:2px solid #fff;outline-offset:3px}.template-list{min-height:0;display:flex;flex:1;flex-direction:column;padding:20px 18px 18px}.template-picker-head{display:flex;align-items:baseline;gap:8px;flex:none;margin:0 0 14px}.template-picker-head small,.template-picker-head em{font:400 10px 'DM Mono',monospace;color:#5c5c5c;font-style:normal}.template-picker-head b,.template-picker-head em{display:none}.template-options{display:grid;gap:10px;min-height:0;overflow-y:auto;padding:2px}.template{width:100%;min-height:94px;padding:8px;border:1px solid #242424;border-radius:12px;background:#151515;color:#ededed;display:flex;align-items:center;gap:10px;text-align:left;cursor:pointer;transition:background .14s,border-color .14s,outline-color .14s}.template:hover{border-color:#4a4a4a;background:#1b1b1b}.template.active{outline-offset:2px}.template-thumbnail{width:60px;height:76px;box-sizing:border-box;flex:none;padding:8px;border-radius:6px;background:#fff;display:flex;flex-direction:column;gap:4px;overflow:hidden}.thumbnail-name,.thumbnail-subtitle,.thumbnail-rule,.thumbnail-accent,.thumbnail-text{display:block;border-radius:2px}.thumbnail-name{width:60%;height:7px;background:#1a1a1a}.thumbnail-subtitle{width:42%;height:3px;background:#9a9a9a}.thumbnail-rule{height:1px;margin:2px 0;background:#e2e2e2}.thumbnail-accent{width:34%;height:3px;background:var(--accent,#ff2d87)}.thumbnail-text{width:90%;height:3px;background:#d9d9d9}.thumbnail-text.short{width:72%}.thumbnail-text.tiny{width:48%}.template-copy{min-width:0;display:flex;flex:1;flex-direction:column;gap:3px}.template-copy strong{font-size:13px;font-weight:600}.template-copy small{overflow:hidden;color:#6b6b6b;font:400 10px 'DM Mono',monospace;white-space:nowrap;text-overflow:ellipsis}.selected-dot{display:none;width:14px;height:14px;border-radius:50%;background:var(--accent,#ff2d87);flex:none}.template.active .selected-dot{display:block}.template-thumbnail[data-thumbnail="classic"]{align-items:center}.template-thumbnail[data-thumbnail="classic"] .thumbnail-text{width:100%}.template-thumbnail[data-thumbnail="executive"] .thumbnail-rule{height:2px;background:#1a1a1a}.template-thumbnail[data-thumbnail="compact"]{padding:7px;gap:2px}.template-thumbnail[data-thumbnail="compact"] .thumbnail-name{height:5px}.template-thumbnail[data-thumbnail="compact"] .thumbnail-text{height:2px}.template-thumbnail[data-thumbnail="bold"]{padding:0;gap:0}.template-thumbnail[data-thumbnail="bold"] .thumbnail-name,.template-thumbnail[data-thumbnail="bold"] .thumbnail-subtitle{margin-left:8px;background:rgba(255,255,255,.9)}.template-thumbnail[data-thumbnail="bold"] .thumbnail-name{margin-top:8px}.template-thumbnail[data-thumbnail="bold"] .thumbnail-rule{height:27px;margin:-14px 0 5px;background:var(--accent,#ff2d87);order:-1}.template-thumbnail[data-thumbnail="minimal"]{padding:12px;gap:7px}.template-thumbnail[data-thumbnail="minimal"] .thumbnail-accent{display:none}.template-thumbnail[data-thumbnail="sidebar"]{padding:8px 6px;background:linear-gradient(90deg,#f1f1f1 34%,#fff 34%)}.template-thumbnail[data-thumbnail="sidebar"] .thumbnail-name{width:42%;background:#2a2a2a}.template-thumbnail[data-thumbnail="sidebar"] .thumbnail-accent{margin-left:34%;width:38%}.template-thumbnail[data-thumbnail="slate"]{padding:0;gap:5px}.template-thumbnail[data-thumbnail="slate"] .thumbnail-name{margin:8px 8px 0;background:#fff}.template-thumbnail[data-thumbnail="slate"] .thumbnail-subtitle{margin-left:8px}.template-thumbnail[data-thumbnail="slate"] .thumbnail-rule{height:24px;margin:-14px 0 3px;background:#2f3437;order:-1}.template-thumbnail[data-thumbnail="ivory"]{background:#f7f3ea}.template-thumbnail[data-thumbnail="ivory"] .thumbnail-name{background:#2b2721}.template-thumbnail[data-thumbnail="ivory"] .thumbnail-rule{background:#ddd4c2}

.template-thumbnail[data-thumbnail="blueprint"]{padding:8px 6px;background:linear-gradient(90deg,#f7f3ea 34%,#fff 34%)}.template-thumbnail[data-thumbnail="blueprint"] .thumbnail-name{width:42%;background:var(--accent,#ff2d87)}.template-thumbnail[data-thumbnail="blueprint"] .thumbnail-rule{height:2px;background:#2b2b2b}.template-thumbnail[data-thumbnail="blueprint"] .thumbnail-accent{margin-left:34%;width:43%}

.resume-paper{margin:0 auto 40px}

.resume-paper{--accent:#ff4d9d;max-width:540px;min-height:700px;margin:auto;padding:48px 46px;background:#fff;color:#1a1a1a;border-radius:3px;box-shadow:0 24px 60px rgba(0,0,0,.5)}
.resume-paper header{padding-bottom:15px;border-bottom:1px solid #e6e6e6}
.resume-paper h2{font-size:32px;letter-spacing:-.04em;line-height:1;margin:0}
.resume-paper header strong{display:block;margin-top:6px;font-size:14px;color:#444}
.resume-paper header small{display:block;margin-top:8px;font-size:10px;color:#666}
.resume-paper section{margin-top:19px}
.resume-paper h3{margin:0 0 5px;color:var(--accent);font:800 11px 'DM Mono',monospace;letter-spacing:.14em;text-transform:uppercase}
.resume-paper p{margin:0;color:#444;font-size:11.5px;line-height:1.5}
.resume-paper article{margin-top:10px}
.resume-paper h4{font-size:13px;margin:0}
.resume-paper time{float:right;font-size:10px;color:#777;font-weight:400}
.resume-paper article b{font-size:11px;color:var(--accent)}

.resume-paper[data-template="classic"]{padding:52px 54px;font-family:Georgia,serif}
.resume-paper[data-template="classic"] h2{font-size:34px;letter-spacing:-.025em}
.resume-paper[data-template="classic"] h3{color:#222;border-bottom:1px solid #a9a9a9;padding-bottom:4px}
.resume-paper[data-template="classic"] article b{color:#333}
.resume-paper[data-template="executive"]{border-top:12px solid var(--accent);padding-top:39px}
.resume-paper[data-template="executive"] header{border:0}
.resume-paper[data-template="executive"] h2{font-size:36px;text-transform:uppercase;letter-spacing:.01em}
.resume-paper[data-template="executive"] h3{color:#202020;border-left:4px solid var(--accent);padding-left:8px}
.resume-paper[data-template="compact"]{padding:35px 39px;min-height:650px}
.resume-paper[data-template="compact"] header{display:flex;flex-wrap:wrap;justify-content:space-between;gap:4px}
.resume-paper[data-template="compact"] header small{width:100%;order:-1;margin:0 0 9px;font-size:9px}
.resume-paper[data-template="compact"] h2{font-size:29px}
.resume-paper[data-template="compact"] section{margin-top:13px}
.resume-paper[data-template="compact"] p{line-height:1.38;font-size:10.5px}
.resume-paper[data-template="compact"] article{margin-top:7px}
.resume-paper[data-template="bold"] h2{color:var(--accent);font-size:37px}
.resume-paper[data-template="bold"] header{border-bottom:3px solid var(--accent)}
.resume-paper[data-template="bold"] h3{color:#242424}
.resume-paper[data-template="minimal"]{padding:56px 58px}
.resume-paper[data-template="minimal"] header,.resume-paper[data-template="minimal"] section{text-align:center}
.resume-paper[data-template="minimal"] h2{font-weight:500;letter-spacing:-.02em}
.resume-paper[data-template="minimal"] h3{color:#777;border-bottom:1px solid #eee;padding-bottom:5px}
.resume-paper[data-template="minimal"] time{float:none;display:block;margin-top:2px}
.resume-paper[data-template="minimal"] article b{display:block;color:#555;margin-top:2px}

@media(max-width:1023px){.builder-grid{display:block}.builder-form{margin:auto;padding-bottom:100px}.mobile-builder-actions{position:fixed;right:0;bottom:0;left:0;z-index:9;display:flex;padding:12px 18px calc(18px + env(safe-area-inset-bottom));background:#0b0b0b;border-top:1px solid #202020}.mobile-builder-actions button{width:100%;min-height:48px;border:0;border-radius:999px;background:#ff2d87;color:#0a0a0a;font-size:14px;font-weight:800;cursor:pointer}.preview-panel{display:none;position:relative;top:auto;height:auto;min-height:calc(100svh - 68px);overflow:visible;padding:0 18px 90px;background:#080808;border:0}.mobile-preview-open .builder-form,.mobile-preview-open .mobile-builder-actions{display:none}.mobile-preview-open .preview-panel{display:block}.mobile-preview-bar{position:sticky;top:68px;z-index:8;display:flex;align-items:center;gap:10px;margin:0 -18px 16px;padding:12px 18px;background:rgba(8,8,8,.94);border-bottom:1px solid #1c1c1c;backdrop-filter:blur(12px)}.mobile-preview-bar span{color:#6b6b6b;font:500 10px 'DM Mono',monospace;letter-spacing:.12em;text-transform:uppercase}.mobile-preview-bar span i{font-style:normal;color:#a0a0a0}.mobile-preview-bar button{margin-left:auto;min-height:44px;padding:0 14px;border:1px solid #303030;border-radius:999px;background:#111;color:#ededed;font:600 11px 'DM Mono',monospace;cursor:pointer}.resume-paper{display:block;max-width:540px;margin:0 auto 40px}.template-picker{display:none;position:fixed;top:auto;right:0;bottom:0;left:0;width:auto;height:auto;max-height:min(390px,54svh);border:1px solid #232323;border-width:1px 0 0;border-radius:20px 20px 0 0;box-shadow:0 -18px 40px rgba(0,0,0,.55);padding:10px 0 calc(16px + env(safe-area-inset-bottom));z-index:110}.mobile-preview-open:not(.template-sheet-closed) .template-picker{display:flex}.template-sheet-close{position:absolute;top:8px;right:12px;z-index:2;display:grid;place-items:center;width:44px;height:44px;padding:0;border:0;background:transparent;color:#8a8a8a;font-size:24px;cursor:pointer}.template-sheet-handle{display:block;flex:none;align-self:center;width:44px;height:4px;border-radius:999px;background:#3a3a3a;margin:0 0 14px}.accent-picker{display:flex;align-items:center;gap:12px;padding:0 54px 14px 18px}.accent-picker .selector-label{flex:none}.accent-options{display:flex;flex:1;justify-content:space-between;gap:0;margin:0}.swatch{display:grid;place-items:center;width:44px;height:44px;flex:none}.swatch span{width:30px;height:30px;margin:0}.swatch em{display:none}.template-list{padding:14px 0 0}.template-picker-head{padding:0 18px;margin-bottom:12px}.template-picker-head span,.template-picker-head small{display:none}.template-picker-head b,.template-picker-head em{display:block;font:500 10px 'DM Mono',monospace;letter-spacing:.16em;text-transform:uppercase;color:#f5f5f5}.template-picker-head b i{font-style:normal;color:#5c5c5c;letter-spacing:0}.template-picker-head em{margin-left:auto;color:#5c5c5c;letter-spacing:0;text-transform:none}.template-options{display:flex;gap:12px;overflow-x:auto;overflow-y:visible;padding:3px 21px 5px;scroll-snap-type:x mandatory;scrollbar-width:none}.template-options::-webkit-scrollbar{display:none}.template{width:88px;min-width:88px;min-height:0;padding:0;border:0;background:transparent;display:flex;flex-direction:column;align-items:stretch;gap:8px;scroll-snap-align:start}.template:hover{border:0;background:transparent}.template.active{outline:0}.template-thumbnail{width:88px;height:112px;padding:10px;gap:5px;border-radius:9px;outline:1px solid #262626;outline-offset:3px}.template.active .template-thumbnail{outline:2px solid var(--accent,#ff2d87)}.template-copy{display:block;text-align:center}.template-copy strong{display:block;color:#7a7a7a;font-size:11px}.template.active .template-copy strong{color:#f5f5f5}.template-copy small,.selected-dot{display:none!important}.template-thumbnail[data-thumbnail="compact"]{padding:9px;gap:3px}.template-thumbnail[data-thumbnail="minimal"]{padding:12px;gap:7px}.template-thumbnail[data-thumbnail="sidebar"]{padding:10px 8px}.template-thumbnail[data-thumbnail="bold"] .thumbnail-name,.template-thumbnail[data-thumbnail="bold"] .thumbnail-subtitle{margin-left:10px}.template-thumbnail[data-thumbnail="bold"] .thumbnail-name{margin-top:10px}.template-thumbnail[data-thumbnail="slate"] .thumbnail-name{margin:10px 10px 0}.template-thumbnail[data-thumbnail="slate"] .thumbnail-subtitle{margin-left:10px}.template-sheet-closed .mobile-design-toggle{position:fixed;right:18px;bottom:calc(18px + env(safe-area-inset-bottom));z-index:9;display:flex;align-items:center;gap:8px;min-height:48px;padding:0 18px;border:1px solid #303030;border-radius:999px;background:#111;color:#f5f5f5;font-size:13px;font-weight:700;box-shadow:0 8px 24px rgba(0,0,0,.4);cursor:pointer}.mobile-design-toggle span{width:14px;height:14px;border-radius:4px;background:var(--accent,#ff2d87)}.drag-handle{left:auto;right:32px;top:0}}
@media(max-width:550px){.builder-header{padding:0 15px}
.local-note{display:none}
.draft-snackbar{right:20px;bottom:calc(82px + env(safe-area-inset-bottom));width:calc(100vw - 40px);gap:10px;padding-left:14px}.draft-snackbar span{display:none}.draft-clear{padding:8px 10px}
.builder-grid{display:block}
.builder-form{padding:28px 20px 100px}
.entry-grid,.field-grid{grid-template-columns:1fr}
.entry-grid .wide,.field-grid .wide{grid-column:auto}
.preview-panel{padding:0 10px 90px}
.mobile-preview-bar{margin:0 -10px 16px;padding-right:10px;padding-left:10px}
.template-picker{margin-left:0}
.resume-paper,.resume-paper[data-template="classic"],.resume-paper[data-template="minimal"]{padding:35px 28px;min-height:650px}
}
@media(prefers-reduced-motion:reduce){.draft-snackbar{transition:none}}
@media(max-width:550px){.site-header{padding:0 15px;gap:12px}.site-brand{font-size:18px}.site-navigation a:not(.free-pill){display:none}.site-navigation .free-pill{font-size:9px;padding:7px 9px}.site-header-controls .download-button{padding:9px 11px;font-size:11px}}
@media(max-width:650px){.site-footer{padding:38px 22px 20px}.site-footer-main{display:block;padding-bottom:34px}.site-footer-links{justify-content:flex-start;margin-top:30px;gap:14px 20px}.site-footer-meta{display:block;line-height:1.7}.site-footer-meta span{display:block}}
@media print{body{background:#fff}.site-header{display:none!important}
.builder-header,.builder-form,.template-picker{display:none!important}
.builder-grid{display:block}
.preview-panel{display:block!important;position:static;height:auto;padding:0;background:#fff;border:0}
.mobile-preview-bar,.mobile-design-toggle,.mobile-builder-actions{display:none!important}
.resume-paper{max-width:none;width:100%;min-height:0;border:0;border-radius:0;box-shadow:none}
}


/* builder templates */
/* Optional photo stays local to the browser; templates remain readable as plain text. */
.photo-control{display:flex;align-items:center;gap:14px;margin:0 0 25px;padding:14px 0;border-bottom:1px solid #242424}
.photo-upload{display:grid;place-items:center;width:58px;height:58px;margin:0!important;border:1px dashed #5a5a5a;border-radius:50%;background:#141414;color:#e6e6e6;cursor:pointer;text-align:center}
.photo-upload input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
.photo-upload span{font-size:10px!important}
.photo-control strong{font-size:12px}
.photo-control strong small{font:10px 'DM Mono',monospace;color:#929292;text-transform:uppercase}
.photo-control p{margin:4px 0 0;color:#929292;font-size:11px}
.remove-photo{margin-top:7px;padding:0;border:0;background:transparent;color:#ff8da7;font-size:11px;cursor:pointer}
.resume-photo{display:none;width:57px;height:57px;float:right;margin:0 0 10px 16px;border-radius:50%;object-fit:cover}
.resume-photo:not([hidden]){display:block}

/* All designs retain the source order: header, profile, experience, education, skills. */
.resume-paper[data-template="sidebar"]{display:grid;grid-template-columns:34% 1fr;column-gap:25px;padding:0;overflow:hidden}
.resume-paper[data-template="sidebar"] header{grid-row:1 / span 5;padding:38px 19px;background:#293747;color:#fff;border:0}
.resume-paper[data-template="sidebar"] header strong,.resume-paper[data-template="sidebar"] header small{color:#dae4ec}
.resume-paper[data-template="sidebar"] header small{line-height:1.8}
.resume-paper[data-template="sidebar"] header small span{display:block}
.resume-paper[data-template="sidebar"] h2{font-size:25px;line-height:1.05}
.resume-paper[data-template="sidebar"] .resume-photo{float:none;width:68px;height:68px;margin:0 0 16px;border:3px solid rgba(255,255,255,.65)}
.resume-paper[data-template="sidebar"] section{margin:0;padding:30px 28px 0 0}
.resume-paper[data-template="sidebar"] h3{color:#293747;border-bottom:1px solid #d7dde2;padding-bottom:5px}

.resume-paper[data-template="slate"]{border-top:10px solid #334a61}
.resume-paper[data-template="slate"] h2{color:#334a61}
.resume-paper[data-template="slate"] h3{color:#334a61;border-bottom:1px solid #cfd7de;padding-bottom:5px}
.resume-paper[data-template="slate"] article b{color:#334a61}
.resume-paper[data-template="slate"] .resume-photo{border-radius:3px}

.resume-paper[data-template="timeline"]{padding-left:68px}
.resume-paper[data-template="timeline"] header{position:relative}
.resume-paper[data-template="timeline"] section{position:relative}
.resume-paper[data-template="timeline"] section::before{content:"";position:absolute;left:-28px;top:1px;width:9px;height:9px;border:3px solid var(--accent);border-radius:50%;background:#fff}
.resume-paper[data-template="timeline"] section::after{content:"";position:absolute;left:-22px;top:16px;bottom:-20px;border-left:1px solid #d9d9d9}
.resume-paper[data-template="timeline"] section:last-child::after{display:none}
.resume-paper[data-template="timeline"] h3{color:#1d1d1d}
.resume-paper[data-template="timeline"] .resume-photo{border-radius:3px}

.resume-paper[data-template="ivory"]{background:#fbfaf5;color:#272522;font-family:Georgia,serif;border:1px solid #e8e4d9}
.resume-paper[data-template="ivory"] header{border-bottom:2px solid #333}
.resume-paper[data-template="ivory"] h2{font-size:37px;letter-spacing:-.02em}
.resume-paper[data-template="ivory"] h3{color:#272522;font-family:Georgia,serif;font-size:12px;letter-spacing:.08em}
.resume-paper[data-template="ivory"] article b{color:#534c40}
.resume-paper[data-template="ivory"] .resume-photo{border-radius:3px;filter:grayscale(1)}

/* Blueprint keeps the reference's warm paper, contact rail, circular portrait, and ruled main column. */
.resume-paper[data-template="blueprint"]{container-type:inline-size;position:relative;display:grid;grid-template-columns:32% 1fr;gap:0;min-height:0;aspect-ratio:595.28/841.89;padding:0;background-color:#f8f5ee;background-image:radial-gradient(rgba(44,38,28,.08) .55px,transparent .7px);background-size:5px 5px;color:#1c1c1c;font-family:'DM Sans',sans-serif;overflow:hidden}
.resume-paper[data-template="blueprint"]::before{content:"";position:absolute;top:7.4cqw;bottom:7.4cqw;left:32cqw;border-left:.25cqw solid #2e2e2e}
.resume-paper[data-template="blueprint"] header{grid-column:1/-1;position:relative;min-height:23.8cqw;padding:6.4cqw 7cqw 3cqw 37cqw;border:0}
.resume-paper[data-template="blueprint"] header::after{content:"";position:absolute;top:19.7cqw;right:7cqw;left:37cqw;border-top:.25cqw solid #292929}
.resume-paper[data-template="blueprint"] .resume-photo{position:absolute;top:9.75cqw;left:8.2cqw;display:block;width:15.8cqw;height:15.8cqw;margin:0;border:.84cqw solid var(--accent);border-radius:50%;object-fit:cover}
.resume-paper[data-template="blueprint"] h2{font-size:4.2cqw;letter-spacing:.06em;text-transform:uppercase;color:#171717}
.resume-paper[data-template="blueprint"] header strong{margin-top:1.8cqw;color:#303030;font-size:1.68cqw;font-weight:700;letter-spacing:.03em}
.resume-paper[data-template="blueprint"] header small{position:absolute;top:31.9cqw;left:4.7cqw;width:22.5cqw;margin:0;color:#343434;font-size:0;line-height:1}
.resume-paper[data-template="blueprint"] header small span{display:block;font-size:1.26cqw;line-height:1.48}
.resume-paper[data-template="blueprint"] section{margin:0}
.resume-paper[data-template="blueprint"] section[data-preview-section="profile"]{grid-column:2;grid-row:2;padding:0 7cqw 0 5cqw}
.resume-paper[data-template="blueprint"] section[data-preview-section="education"]{grid-column:2;grid-row:3;padding:1.7cqw 7cqw 0 5cqw}
.resume-paper[data-template="blueprint"] section[data-preview-section="experience"]{grid-column:2;grid-row:4;padding:1.7cqw 7cqw 7cqw 5cqw}
.resume-paper[data-template="blueprint"] section[data-preview-section="skills"]{grid-column:1;grid-row:2 / span 3;padding:26cqw 4.2cqw 0 6.4cqw;align-self:start}
.resume-paper[data-template="blueprint"] h3{margin-bottom:1cqw;padding-bottom:.65cqw;border-bottom:.17cqw solid #2b2b2b;color:var(--accent);font:800 1.68cqw 'DM Sans',sans-serif;letter-spacing:.04em}
.resume-paper[data-template="blueprint"] p{color:#353535;font-size:1.51cqw;line-height:1.45}
.resume-paper[data-template="blueprint"] article{margin-top:2.35cqw}
.resume-paper[data-template="blueprint"] h4{font-size:1.68cqw;text-transform:none}
.resume-paper[data-template="blueprint"] article b{display:block;margin-top:.5cqw;color:#333;font-size:1.51cqw}
.resume-paper[data-template="blueprint"] time{color:#444;font-size:1.43cqw}
.resume-paper[data-template="blueprint"] [data-output-skills]{padding-left:0;white-space:pre-line;line-height:1.45;background:none}
.resume-paper[data-template="blueprint"] [data-output-skills]::first-line{color:#222}

/* Arabic CV content needs shaping-capable fonts and RTL document geometry. */
[dir="rtl"] .resume-paper{font-family:Tahoma,Arial,'Noto Sans Arabic',sans-serif;direction:rtl;text-align:right}
[dir="rtl"] .resume-paper h2,[dir="rtl"] .resume-paper h3,[dir="rtl"] .resume-paper h4,[dir="rtl"] .resume-paper p,[dir="rtl"] .resume-paper article b,[dir="rtl"] .resume-paper header strong,[dir="rtl"] .resume-paper header small{letter-spacing:normal!important;word-spacing:normal;unicode-bidi:plaintext}
[dir="rtl"] .resume-paper time{float:left}
[dir="rtl"] .resume-paper[data-template="blueprint"]{grid-template-columns:1fr 32%}
[dir="rtl"] .resume-paper[data-template="blueprint"]::before{right:32cqw;left:auto}
[dir="rtl"] .resume-paper[data-template="blueprint"] header{padding:6.4cqw 37cqw 3cqw 7cqw}
[dir="rtl"] .resume-paper[data-template="blueprint"] header::after{right:37cqw;left:7cqw}
[dir="rtl"] .resume-paper[data-template="blueprint"] .resume-photo{right:8.2cqw;left:auto}
[dir="rtl"] .resume-paper[data-template="blueprint"] header small{right:4.7cqw;left:auto;text-align:right}
[dir="rtl"] .resume-paper[data-template="blueprint"] section[data-preview-section="profile"]{grid-column:1;padding:0 5cqw 0 7cqw}
[dir="rtl"] .resume-paper[data-template="blueprint"] section[data-preview-section="education"],[dir="rtl"] .resume-paper[data-template="blueprint"] section[data-preview-section="experience"]{grid-column:1;padding-right:5cqw;padding-left:7cqw}
[dir="rtl"] .resume-paper[data-template="blueprint"] section[data-preview-section="skills"]{grid-column:2;padding:26cqw 6.4cqw 0 4.2cqw}
[dir="rtl"] .resume-paper[data-template="blueprint"] [data-output-skills]{padding-right:13px;padding-left:0}

@media(max-width:550px){.resume-paper[data-template="sidebar"]{display:block;padding:0}
.resume-paper[data-template="sidebar"] header{padding:32px 28px}
.resume-paper[data-template="sidebar"] section{padding:20px 28px;background:#fff;color:#1a1a1a}
.resume-paper[data-template="timeline"]{padding-left:58px}
.resume-paper[data-template="blueprint"]{display:block;padding:0 24px 30px;background-size:5px 5px}
.resume-paper[data-template="blueprint"]::before{display:none}
.resume-paper[data-template="blueprint"] header{min-height:0;padding:34px 0 22px 128px;border-bottom:2px solid #292929}
.resume-paper[data-template="blueprint"] header::after{display:none}
.resume-paper[data-template="blueprint"] .resume-photo{top:28px;left:0;width:86px;height:86px;border-width:5px}
.resume-paper[data-template="blueprint"] header small{position:static;width:auto;margin-top:10px}
.resume-paper[data-template="blueprint"] header small span{display:inline}
.resume-paper[data-template="blueprint"] section,.resume-paper[data-template="blueprint"] section[data-preview-section="education"],.resume-paper[data-template="blueprint"] section[data-preview-section="experience"],.resume-paper[data-template="blueprint"] section[data-preview-section="skills"]{padding:22px 0 0}
[dir="rtl"] .resume-paper[data-template="blueprint"] header{padding:34px 128px 22px 0}
[dir="rtl"] .resume-paper[data-template="blueprint"] .resume-photo{right:0;left:auto}
[dir="rtl"] .resume-paper[data-template="blueprint"] section,[dir="rtl"] .resume-paper[data-template="blueprint"] section[data-preview-section="education"],[dir="rtl"] .resume-paper[data-template="blueprint"] section[data-preview-section="experience"],[dir="rtl"] .resume-paper[data-template="blueprint"] section[data-preview-section="skills"]{padding:22px 0 0}
}


/* The reference-inspired formal template keeps its content in one printable text column. */
.resume-paper[data-template="formal"]{max-width:620px;padding:56px 58px;color:#202020;font-family:Georgia,'Times New Roman',serif}.resume-paper[data-template="formal"] header{text-align:center;padding:0 0 11px;border-top:5px double #292929;border-bottom:5px double #292929}.resume-paper[data-template="formal"] h2{font-size:38px;font-weight:500;letter-spacing:.11em;text-transform:uppercase}.resume-paper[data-template="formal"] header strong{margin-top:10px;color:#292929;font-family:Georgia,'Times New Roman',serif;font-size:13px;letter-spacing:.18em;text-transform:uppercase}.resume-paper[data-template="formal"] header small{margin-top:15px;color:#303030;font-size:11px}.resume-paper[data-template="formal"] section{margin-top:26px}.resume-paper[data-template="formal"] h3{color:#202020;border-bottom:2px solid #767676;padding-bottom:4px;font-family:Georgia,'Times New Roman',serif;font-size:13px;letter-spacing:.08em}.resume-paper[data-template="formal"] p{color:#4d4d4d;font-size:12px;line-height:1.55}.resume-paper[data-template="formal"] h4{font-family:Georgia,'Times New Roman',serif;font-size:13px;text-transform:uppercase}.resume-paper[data-template="formal"] article b{color:#4b4b4b;font-family:Georgia,'Times New Roman',serif}.resume-paper[data-template="formal"] .resume-photo{width:58px;height:58px;margin:-36px 0 0 12px;border:1px solid #777;border-radius:0}.resume-paper[data-template="formal"] .resume-photo[data-sample-photo="true"]{opacity:.78;filter:grayscale(1)}
@media print{.resume-paper .resume-photo[data-sample-photo="true"]{display:none!important}}
@media(max-width:550px){.resume-paper[data-template="formal"]{padding:39px 30px}.resume-paper[data-template="formal"] h2{font-size:27px;letter-spacing:.07em}.resume-paper[data-template="formal"] .resume-photo{margin:0 0 8px 12px}}

/* Formal template: photo is centered above the name. */
.resume-paper[data-template="formal"] .resume-photo{float:none;width:76px;height:76px;margin:0 auto 16px;border:1px solid #777;border-radius:50%;object-fit:cover}
@media(max-width:550px){.resume-paper[data-template="formal"] .resume-photo{margin:0 auto 12px}}

/* Inspired by the black-header reference: image and identity lead, with no website field. */
.resume-paper[data-template="noir"]{display:grid;grid-template-columns:36% 1fr;column-gap:24px;max-width:620px;padding:0;overflow:hidden}.resume-paper[data-template="noir"] header{grid-column:1/-1;display:grid;grid-template-columns:145px 1fr;align-items:center;gap:25px;padding:27px 42px;background:#080808;color:#fff;border:0}.resume-paper[data-template="noir"] header strong,.resume-paper[data-template="noir"] header small{color:#e8e8e8}.resume-paper[data-template="noir"] header small{display:none}.resume-paper[data-template="noir"] h2{font-size:32px;line-height:.9;text-transform:uppercase}.resume-paper[data-template="noir"] .resume-photo{float:none;width:98px;height:98px;margin:0;border:4px solid #fff}.resume-paper[data-template="noir"] section{margin:0;padding:25px 26px 0 0}.resume-paper[data-template="noir"] section:nth-of-type(1),.resume-paper[data-template="noir"] section:nth-of-type(3),.resume-paper[data-template="noir"] section:nth-of-type(4){grid-column:1;padding:25px 0 0 31px}.resume-paper[data-template="noir"] section:nth-of-type(2){grid-column:2;grid-row:2 / span 3}.resume-paper[data-template="noir"] section:nth-of-type(4){padding-bottom:30px}.resume-paper[data-template="noir"] h3{color:#222;border:0;font-size:12px;letter-spacing:.02em}.resume-paper[data-template="noir"] p{font-size:10.5px;line-height:1.45}.resume-paper[data-template="noir"] article{margin-top:15px}.resume-paper[data-template="noir"] article b{color:#333}.resume-paper[data-template="noir"] time{font-size:9px}
@media(max-width:550px){.resume-paper[data-template="noir"]{display:block;padding:0}.resume-paper[data-template="noir"] header{grid-template-columns:90px 1fr;padding:25px 26px;gap:18px}.resume-paper[data-template="noir"] h2{font-size:25px}.resume-paper[data-template="noir"] .resume-photo{width:78px;height:78px}.resume-paper[data-template="noir"] section,.resume-paper[data-template="noir"] section:nth-of-type(1),.resume-paper[data-template="noir"] section:nth-of-type(3),.resume-paper[data-template="noir"] section:nth-of-type(4){padding:21px 27px 0}.resume-paper[data-template="noir"] section:nth-of-type(4){padding-bottom:27px}}

/* Keep the available contact fields visible; the builder deliberately has no website field. */
.resume-paper[data-template="noir"] header small{display:block;margin-top:9px;font-size:9px;line-height:1.45}

/* Export the live template at A4 dimensions instead of collapsing it into a generic print layout. */
@page{size:A4;margin:0}
@media print{html,body{width:210mm;height:297mm;margin:0!important;padding:0!important;background:#fff!important;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}.builder-page,.builder-grid{display:block!important;min-height:0!important;background:#fff!important}.preview-panel{display:block!important;position:static!important;width:210mm!important;height:297mm!important;overflow:visible!important;padding:0!important;border:0!important;background:#fff!important}.resume-paper,.resume-paper[data-template="noir"],.resume-paper[data-template="sidebar"]{display:grid!important;width:210mm!important;max-width:210mm!important;min-height:297mm!important;height:297mm!important;margin:0!important;box-shadow:none!important;break-after:page;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}.resume-paper[data-template="noir"] header,.resume-paper[data-template="sidebar"] header{background-color:#080808!important;background:#080808!important;color:#fff!important}.resume-paper[data-template="sidebar"] header{background-color:#293747!important;background:#293747!important}.resume-paper[data-template="formal"],.resume-paper[data-template="ivory"]{display:block!important}.resume-paper[data-template="formal"] header,.resume-paper[data-template="ivory"]{background-color:#fff!important}}

/* Other templates retain their normal document flow during export. */
@media print{.resume-paper{display:block!important}.resume-paper[data-template="noir"],.resume-paper[data-template="sidebar"]{display:grid!important}}

/* Let long CVs flow onto additional physical pages instead of clipping at one A4-height preview. */
@media print{.preview-panel{height:auto!important;min-height:0!important;overflow:visible!important}.resume-paper{height:auto!important;min-height:0!important;break-after:auto!important}.resume-paper[data-template="blueprint"]{display:grid!important}}

/* pdf editor */
.pdf-editor{--pe-ink:#191b1d;--pe-muted:#747a80;--pe-line:#dfe2e4;--pe-soft:#f4f5f3;--pe-green:#c8ff35;min-height:100vh;background:#f1f2f0;color:var(--pe-ink);font-family:'DM Sans',sans-serif}
.pdf-editor button,.pdf-editor input,.pdf-editor textarea,.pdf-editor select{font:inherit}
.pdf-editor [hidden]{display:none!important}
.pdf-editor-brand{font-size:21px;font-weight:800;letter-spacing:-1.35px}
.pdf-editor-brand span{display:inline-block;width:8px;height:8px;margin-left:5px;border-radius:50%;background:#ef4b5c}


.pdf-welcome{min-height:calc(100vh - 68px);padding:0 clamp(24px,5vw,76px);overflow:hidden;background:#f4f5f1}
.pdf-welcome-nav{height:82px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #d8dbd7}
.privacy-chip{display:flex;align-items:center;gap:9px;color:#595f5c;font:600 10px 'DM Mono',monospace;letter-spacing:.08em}
.privacy-chip i,.local-status i,.file-identity i{display:inline-block;width:7px;height:7px;border-radius:50%;background:#65a851;box-shadow:0 0 0 4px rgba(101,168,81,.12)}
.welcome-grid{min-height:calc(100vh - 128px);display:grid;grid-template-columns:minmax(0,1.25fr) minmax(390px,.75fr);gap:clamp(50px,9vw,150px);align-items:center;max-width:1370px;margin:auto}
.welcome-kicker{margin:0 0 24px;color:#ef4b5c;font:600 11px 'DM Mono',monospace;letter-spacing:.16em}
.welcome-copy h1{margin:0;font-size:clamp(58px,7.6vw,118px);line-height:.82;letter-spacing:-.076em}
.welcome-copy h1 em{font-family:'Playfair Display',serif;font-weight:600}
.welcome-copy>p:not(.welcome-kicker){max-width:520px;margin:33px 0;color:#5f6461;font-size:18px;line-height:1.5}
.welcome-trust{max-width:620px;padding-top:18px;border-top:1px solid #cfd2ce;display:flex;justify-content:space-between;gap:20px;color:#757a76;font:500 9px 'DM Mono',monospace;letter-spacing:.1em}
.pdf-drop{min-height:500px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:42px;text-align:center;cursor:pointer;background:#1b1d1e;color:#fff;box-shadow:22px 24px 0 #dfe2dd;transition:transform .25s,box-shadow .25s}
.pdf-drop:hover,.pdf-drop.dragging{transform:translate(-4px,-4px);box-shadow:30px 32px 0 #dfe2dd}
.pdf-drop.dragging{outline:3px solid var(--pe-green);outline-offset:-11px}
.pdf-drop input{display:none}
.drop-icon{width:74px;height:74px;display:grid;place-items:center;margin-bottom:32px;border:1px solid #3a3e3e;border-radius:50%;background:#232627}
.drop-icon svg{width:28px;fill:none;stroke:var(--pe-green);stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.pdf-drop strong{font-size:27px;letter-spacing:-.03em}
.pdf-drop small{margin-top:8px;color:#929798;font-size:12px}
.pdf-drop>b{margin-top:34px;padding:14px 18px;background:var(--pe-green);color:#171918;font-size:12px}
.pdf-drop>b span{padding-left:42px}
.welcome-footnote{height:60px;margin:0;text-align:center;color:#858985;font:9px 'DM Mono',monospace;letter-spacing:.08em}


.editor-app{height:calc(100vh - 68px);overflow:hidden;background:#eceeec}
.editor-topbar{height:70px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 22px 0 26px;border-bottom:1px solid var(--pe-line);background:#fff;position:relative;z-index:20}
.topbar-left,.topbar-actions,.history-actions{display:flex;align-items:center}
.topbar-rule{height:28px;width:1px;margin:0 20px;background:#dfe2e3}
.file-identity{display:flex;flex-direction:column;max-width:320px}
.file-identity strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}
.file-identity small{margin-top:3px;color:#92969a;font:8px 'DM Mono',monospace;letter-spacing:.05em}
.file-identity i{width:5px;height:5px;margin-right:5px;box-shadow:none}
.history-actions{height:32px;border:1px solid var(--pe-line)}
.history-actions button{width:37px;height:30px;border:0;background:#fff;color:#4b5053;cursor:pointer}
.history-actions button+button{border-left:1px solid var(--pe-line)}
.history-actions button:disabled{opacity:.28;cursor:default}
.history-actions svg,.mode-switch svg{width:16px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.topbar-actions{justify-content:flex-end;gap:18px}
.local-status{color:#69706b;font:600 8px 'DM Mono',monospace;letter-spacing:.12em}
.local-status i{width:6px;height:6px;margin-right:7px;box-shadow:none}
.replace-file{border:0;background:none;color:#656a6d;font-size:11px;cursor:pointer}
.export-pdf{border:0;padding:12px 15px;background:#1b1d1e;color:#fff;font-size:11px;font-weight:700;cursor:pointer;min-width:124px}
.export-pdf:hover{background:#303333}
.export-pdf:disabled{opacity:.6}
.export-pdf span{margin-left:28px;color:var(--pe-green)}


.editor-commandbar{height:58px;display:flex;align-items:center;justify-content:center;border-bottom:1px solid var(--pe-line);background:#fff;position:relative;z-index:15}
.mode-switch{display:flex;gap:4px}
.mode-switch button{height:35px;display:flex;align-items:center;gap:7px;padding:0 12px;border:1px solid transparent;background:#fff;color:#72777b;font-size:10px;cursor:pointer}
.mode-switch button.active{border-color:#bbbfc1;background:#f5f6f4;color:#17191a;font-weight:700}
.command-hint{position:absolute;left:24px;color:#969b9e;font:9px 'DM Mono',monospace}
.zoom-control{height:31px;display:flex;align-items:center;border:1px solid var(--pe-line)}
.zoom-control button{width:31px;height:29px;border:0;background:#fff;color:#555b5e;cursor:pointer}
.zoom-control span{width:48px;text-align:center;color:#73787b;font:9px 'DM Mono',monospace}


.editor-body{height:calc(100% - 128px);display:grid;grid-template-columns:126px minmax(430px,1fr) 286px}
.page-rail{padding:21px 14px;border-right:1px solid var(--pe-line);background:#f8f9f7;overflow:auto}
.page-rail>p{margin:0 0 18px;color:#9a9fa0;font:600 8px 'DM Mono',monospace;letter-spacing:.15em}
.thumbnail-list{display:flex;flex-direction:column;gap:15px}
.page-thumb{border:0;background:none;padding:0;color:#757b7d;cursor:pointer}
.page-thumb>span{display:block;padding:5px;border:1px solid transparent;background:#fff;box-shadow:0 2px 8px rgba(27,30,28,.08)}
.page-thumb canvas{display:block;width:100%;height:auto;background:#fff}
.page-thumb b{display:block;margin-top:6px;font:500 9px 'DM Mono',monospace}
.page-thumb.active>span{border-color:#292c2d;box-shadow:0 0 0 2px #fff,0 0 0 3px #292c2d}
.page-thumb.active b{color:#1b1d1e;font-weight:700}
.add-file{width:100%;margin-top:18px;padding:10px 4px;border:1px dashed #cdd0ce;background:none;color:#777c7f;font-size:9px;cursor:pointer}
.add-file span{font-size:15px;vertical-align:-1px;margin-right:3px}
.document-stage{position:relative;overflow:auto;padding:44px clamp(36px,6vw,86px) 110px;background:#e8eae8;scroll-behavior:smooth}
.document-pages{display:flex;flex-direction:column;align-items:center;gap:35px;min-width:max-content}
.pdf-sheet{position:relative;flex:none;background:#fff;box-shadow:0 12px 40px rgba(23,25,24,.18);transform-origin:top center;animation:sheet-in .42s both}
.pdf-sheet>canvas{display:block;direction:ltr;unicode-bidi:isolate}
.sheet-number{position:absolute;right:-26px;bottom:0;color:#888e8b;font:8px 'DM Mono',monospace}
.pdf-text-layer,.edit-layer{position:absolute;inset:0}
.source-text{position:absolute;margin:0;padding:0;border:0;transform-origin:0 0;background:transparent;color:transparent;cursor:text;border-radius:1px}
.source-text:hover{outline:1px solid rgba(37,112,255,.65);background:rgba(48,124,255,.10)}
.source-text:focus{outline:2px solid rgba(37,112,255,.9);background:rgba(48,124,255,.12)}
.source-text.is-edited{visibility:hidden}
.edit-layer{pointer-events:none}
.text-edit{position:absolute;pointer-events:auto;white-space:pre-wrap;overflow:hidden;line-height:1.25;cursor:move;user-select:none;padding:0 2px;outline:1px solid transparent;background:transparent}
.text-edit.replacing{background:#fff}
.text-edit.selected{outline:1px solid #2674e8;box-shadow:0 0 0 2px rgba(38,116,232,.11)}
.text-edit .resize-handle{display:none;position:absolute;right:-4px;bottom:-4px;width:8px;height:8px;border:1px solid #fff;background:#2674e8;cursor:ew-resize}
.text-edit.selected .resize-handle{display:block}
.image-edit{position:absolute;pointer-events:auto;cursor:move;user-select:none;line-height:0;outline:1px solid transparent}
.image-edit img{display:block;width:100%;height:100%;object-fit:fill;pointer-events:none}
.image-edit.selected{outline:1px solid #2674e8;box-shadow:0 0 0 2px rgba(38,116,232,.11)}
.image-edit .resize-handle{display:none;position:absolute;right:-4px;bottom:-4px;width:8px;height:8px;border:1px solid #fff;background:#2674e8;cursor:ew-resize}
.image-edit.selected .resize-handle{display:block}
.placing-text .pdf-sheet{cursor:crosshair}
.placing-text .source-text{pointer-events:none}
.placing-image .pdf-sheet{cursor:crosshair}
.placing-image .source-text{pointer-events:none}
.page-position{position:fixed;bottom:20px;left:50%;height:38px;display:flex;align-items:center;transform:translateX(-50%);border-radius:2px;background:#202324;color:#fff;box-shadow:0 7px 20px rgba(0,0,0,.22);z-index:12}
.page-position button{width:33px;height:38px;border:0;background:none;color:#aeb3b1;cursor:pointer}
.page-position span{font:10px 'DM Mono',monospace}
.page-position>b{color:#fff}
.page-control-divider{width:1px;height:18px;background:rgba(255,255,255,.2)}
.page-position .zoom-control{position:static;height:38px;margin:0 2px;border:0}
.page-position .zoom-control button{width:31px;height:38px}
.page-position .zoom-control span{width:46px;text-align:center;color:#fff}


.text-inspector{padding:27px 22px;border-left:1px solid var(--pe-line);background:#fff;overflow:auto}
.inspector-empty{padding:25vh 12px 0;text-align:center;color:#7a7f81}
.inspector-empty>span{display:grid;place-items:center;width:47px;height:47px;margin:auto;border:1px solid var(--pe-line);border-radius:50%}
.inspector-empty svg{width:18px;fill:none;stroke:#6d7375;stroke-width:1.4}
.inspector-empty h2{margin:18px 0 7px;color:#35393a;font-size:18px;letter-spacing:-.03em}
.inspector-empty p{margin:0;font-size:11px;line-height:1.55}
.inspector-heading{display:flex;align-items:start;justify-content:space-between;padding-bottom:21px;border-bottom:1px solid var(--pe-line)}
.inspector-heading p{margin:0 0 4px;color:#9aa0a1;font:600 8px 'DM Mono',monospace;letter-spacing:.14em}
.inspector-heading h2{margin:0;font-size:19px;letter-spacing:-.035em}
.inspector-heading button{border:0;background:none;color:#8a8f91;font-size:23px;line-height:1;cursor:pointer}
.control-label{display:block;margin:20px 0 7px;color:#888e90;font:600 8px 'DM Mono',monospace;letter-spacing:.1em;text-transform:uppercase}
.inspector-controls textarea{width:100%;min-height:102px;padding:10px;border:1px solid #d7dadd;resize:vertical;color:#26292a;font-size:12px;line-height:1.45;outline:none}
.inspector-controls textarea:focus,.inspector-controls select:focus,.step-input:focus-within{border-color:#373b3d}
.control-row{display:grid;grid-template-columns:1fr 76px;gap:10px}
.control-row label{min-width:0}
.inspector-controls select,.step-input{width:100%;height:36px;border:1px solid #d7dadd;background:#fff;color:#343839;font-size:11px}
.inspector-controls select{padding:0 8px}
.font-notice{display:block;margin-top:7px;color:#b44848;font-size:9px;line-height:1.4}
.step-input{display:flex;align-items:center}
.step-input input{width:48px;border:0;outline:0;padding-left:8px;font-size:11px}
.step-input span{color:#999;font-size:9px}
.style-row{display:grid;grid-template-columns:36px 36px 36px 36px 1fr;gap:5px}
.style-row>button,.color-button{height:35px;display:grid;place-items:center;border:1px solid #d7dadd;background:#fff;color:#4a4f51;cursor:pointer}
.style-row>button.active{border-color:#303435;background:#eef0ed;color:#17191a}
.style-row [data-align="center"]{transform:scaleX(.72)}
.color-button{position:relative;justify-self:end;width:36px;border-radius:50%}
.color-button input{position:absolute;opacity:0;width:1px;height:1px}
.color-button span{width:18px;height:18px;border-radius:50%;background:#161616;box-shadow:0 0 0 3px #fff,0 0 0 4px #c8cbcd}
.position-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px}
.position-grid label{height:36px;display:flex;align-items:center;gap:10px;padding:0 9px;border:1px solid #d7dadd;color:#999;font:9px 'DM Mono',monospace}
.position-grid input{width:100%;border:0;outline:0;font-size:11px}
.inspector-tip{margin-top:25px;padding:13px 0;border-top:1px solid var(--pe-line);border-bottom:1px solid var(--pe-line);color:#898e90;font-size:9px;line-height:1.55}
.inspector-tip b{margin-right:4px;color:#5a6062;font:600 8px 'DM Mono',monospace;letter-spacing:.08em}


.editor-loading{position:fixed;inset:128px 0 0;z-index:50;display:flex;flex-direction:column;align-items:center;justify-content:center;background:rgba(242,244,241,.92);backdrop-filter:blur(5px)}
.editor-loading span{width:34px;height:34px;margin-bottom:18px;border:2px solid #ccd0cb;border-top-color:#1b1e1c;border-radius:50%;animation:spin .8s linear infinite}
.editor-loading strong{font-size:15px}
.editor-loading small{margin-top:6px;color:#858b87;font-size:10px}
.editor-toast{position:fixed;left:50%;bottom:22px;z-index:80;max-width:420px;padding:12px 18px;opacity:0;pointer-events:none;transform:translate(-50%,15px);background:#1e2121;color:#fff;font-size:11px;box-shadow:0 8px 28px rgba(0,0,0,.25);transition:.25s}
.editor-toast.show{opacity:1;transform:translate(-50%,0)}
.editor-toast.error{background:#a72e35}
@keyframes spin{to{transform:rotate(360deg)}
}
@keyframes sheet-in{from{opacity:0;transform:translateY(13px)}
to{opacity:1;transform:none}
}


@media(max-width:900px){.welcome-grid{grid-template-columns:1fr;padding:70px 0}
.pdf-drop{min-height:340px}
.welcome-footnote{display:none}
.local-status,.command-hint{display:none}
.editor-body{grid-template-columns:96px minmax(390px,1fr)}
.text-inspector{position:fixed;right:0;top:128px;bottom:0;width:286px;z-index:30;transform:translateX(100%);box-shadow:-8px 0 24px rgba(0,0,0,.12)}
.text-inspector:has(.inspector-controls:not([hidden])){transform:none}
.topbar-actions{gap:7px}
.replace-file{display:none}
}

@media(max-width:620px){.pdf-welcome{padding:0 22px}
.pdf-welcome-nav{height:68px}
.welcome-grid{min-height:calc(100vh - 68px);padding:45px 0;gap:50px}
.welcome-copy h1{font-size:clamp(52px,17vw,78px)}
.welcome-copy>p:not(.welcome-kicker){font-size:15px}
.welcome-trust{display:none}
.pdf-drop{min-height:300px;padding:25px;box-shadow:12px 14px 0 #dfe2dd}
.editor-topbar{grid-template-columns:1fr auto;height:62px;padding:0 14px}
.topbar-rule,.file-identity,.history-actions,.local-status{display:none}
.editor-commandbar{height:51px;justify-content:flex-start;padding-left:10px}
.editor-commandbar .zoom-control{display:none}
.editor-body{height:calc(100% - 113px);grid-template-columns:1fr}
.page-rail{display:none}
.document-stage{padding:25px 18px 85px}
.text-inspector{top:auto;bottom:0;width:100%;height:66vh;padding:22px;border-left:0;border-top:1px solid var(--pe-line)}
.inspector-empty{display:none}
.editor-loading{inset:113px 0 0}
.page-position{left:50%;transform:translateX(-50%)}
.pdf-sheet{max-width:calc(100vw - 36px)!important;height:auto!important;aspect-ratio:var(--page-ratio)}
.pdf-sheet>canvas{width:100%!important;height:100%!important}
.export-pdf{min-width:112px}
}


/* Shared TheFreeCV editor language: black workspace, paper canvas, pink action. */
.editor-app{background:#0a0a0a;color:#fff}
.editor-topbar{background:rgba(10,10,10,.96);border-color:#222}
.topbar-rule{background:#303030}
.file-identity small,.local-status{color:#8d8d8d}
.history-actions{border-color:#303030;border-radius:999px;overflow:hidden}
.history-actions button{background:#141414;color:#d0d0d0}
.history-actions button+button{border-color:#303030}
.replace-file{color:#aaa}
.export-pdf{border-radius:999px;background:#ff4d9d;color:#090909;font-weight:800}
.export-pdf:hover{background:#ff70b2}
.export-pdf span{color:#090909}
.editor-commandbar{background:#0d0d0d;border-color:#222}
.mode-switch button{background:transparent;color:#909090;border-radius:999px}
.mode-switch button.active{border-color:#353535;background:#1a1a1a;color:#fff}
.command-hint{color:#777}
.zoom-control{border-color:#303030;border-radius:999px;overflow:hidden}
.zoom-control button{background:#141414;color:#ddd}
.zoom-control span{background:#141414;color:#aaa}
.editor-body{background:#0a0a0a}
.page-rail{background:#0d0d0d;border-color:#222}
.page-thumb.active>span{border-color:#ff4d9d;box-shadow:0 0 0 2px #0d0d0d,0 0 0 3px #ff4d9d}
.page-thumb.active b{color:#ff4d9d}
.add-file{border-color:#333;color:#999;border-radius:12px}
.document-stage{background:#151515}
.pdf-sheet{border-radius:6px;box-shadow:0 24px 60px rgba(0,0,0,.55)}
.text-inspector{background:#0a0a0a;border-color:#222;color:#fff}
.inspector-empty{color:#777}
.inspector-empty h2,.inspector-heading h2{color:#fff}
.inspector-empty>span{border-color:#333}
.inspector-empty svg{stroke:#aaa}
.inspector-heading{border-color:#292929}
.inspector-heading p,.control-label{color:#ff4d9d}
.inspector-actions{display:flex;align-items:center;gap:3px}
.inspector-heading button{width:30px;height:30px;border:1px solid #292929;border-radius:50%;color:#aaa;font-size:17px}
.inspector-controls textarea,.inspector-controls select,.step-input,.position-grid label{border-color:#2a2a2a;border-radius:12px;background:#141414;color:#fff}
.inspector-controls textarea:focus,.inspector-controls select:focus,.step-input:focus-within{border-color:#ff4d9d}
.font-notice{color:#ff8bbb}
.step-input input,.position-grid input{background:transparent;color:#fff}
.style-row{grid-template-columns:repeat(6,34px) 1fr;gap:5px}
.style-row>button,.color-button{height:34px;border-color:#2a2a2a;border-radius:9px;background:#141414;color:#ddd}
.style-row>button.active{border-color:#ff4d9d;background:#24131c;color:#ff7ab8}
.color-button{justify-self:end}
.color-button span{box-shadow:0 0 0 3px #141414,0 0 0 4px #555}
.inspector-tip{border-color:#292929;color:#888}
.inspector-tip b{color:#ff4d9d}
.source-mask{position:absolute;pointer-events:none}
.text-edit{background:transparent!important}
.text-edit.selected{outline-color:#ff4d9d;box-shadow:0 0 0 2px rgba(255,77,157,.16)}
.image-edit.selected{outline-color:#ff4d9d;box-shadow:0 0 0 2px rgba(255,77,157,.16)}
.text-edit .resize-handle{background:#ff4d9d}
.image-edit .resize-handle{background:#ff4d9d}
.text-edit.editing{cursor:text;user-select:text;outline:2px solid #ff4d9d;overflow:visible}
.text-edit.editing .resize-handle{display:none}
.inline-copy{display:block;min-width:100%;min-height:1em;outline:0;white-space:pre-wrap}
.inline-copy[contenteditable="true"]{cursor:text;user-select:text}
.source-text:hover{outline-color:#ff4d9d;background:rgba(255,77,157,.1)}
.page-position{background:#0a0a0a;border:1px solid #333}
.page-position .zoom-control{border-radius:0}
.page-control-divider{background:#333}
.page-position .zoom-control button,.page-position .zoom-control span{background:#0a0a0a}
.page-position .zoom-control span{color:#f5f5f5}
.editor-loading{background:rgba(10,10,10,.9);color:#fff}
.editor-loading span{border-color:#444;border-top-color:#ff4d9d}
.editor-loading small{color:#999}


.pdf-drop.dragging{outline-color:#ff4d9d}
.drop-icon svg{stroke:#ff4d9d}
.pdf-drop>b{background:#ff4d9d}
.welcome-kicker{color:#ef4b5c}


@media(max-width:900px){.text-inspector{transition:transform .25s ease;background:#0a0a0a}
}

@media(max-width:620px){.editor-topbar{height:62px}
.editor-commandbar{height:54px;padding:0 10px}
.editor-body{height:calc(100% - 116px)}
.mode-switch{width:100%}
.mode-switch button{flex:1;justify-content:center;min-height:42px}
.editor-commandbar .zoom-control{display:none}
.document-stage{padding:12px 12px 90px;overscroll-behavior:contain}
.document-pages{min-width:0;width:100%;gap:22px}
.pdf-sheet{max-width:none!important;height:auto!important;aspect-ratio:auto}
.pdf-sheet>canvas{width:100%!important;height:100%!important}
.text-inspector{top:auto;bottom:0;height:min(54svh,520px);padding:18px 18px calc(20px + env(safe-area-inset-bottom));border:0;border-top:1px solid #333;border-radius:20px 20px 0 0;transform:translateY(105%);box-shadow:0 -18px 45px rgba(0,0,0,.5)}
.text-inspector:has(.inspector-controls:not([hidden])){transform:none}
.inspector-heading{position:sticky;top:-18px;z-index:2;margin:-18px -18px 0;padding:18px;background:#0a0a0a;border-radius:20px 20px 0 0}
.inspector-controls textarea{min-height:72px}
.control-label{margin-top:14px}
.page-position{bottom:14px}
.export-pdf{min-width:auto;padding:11px 15px}
.export-pdf span{margin-left:10px}
.pdf-editor-brand{font-size:18px}
}


.editor-app .pdf-editor-brand{color:#fff;text-decoration:none}
.pdf-welcome .pdf-editor-brand{color:#111;text-decoration:none}
.style-row{grid-template-columns:repeat(7,minmax(0,1fr))}
.style-row>button,.color-button{width:100%;min-width:0}
.color-button{justify-self:stretch}


/* seo */
.content-shell{min-height:100vh;padding:28px clamp(22px,8vw,150px) 80px}
.content-nav{display:flex;justify-content:space-between;align-items:center}
.content-hero{max-width:830px;padding:clamp(90px,15vh,170px) 0 80px}
.content-hero h1{font-size:clamp(54px,8vw,108px);line-height:.87;letter-spacing:-.03em;margin:0}
.content-hero h1 em{font-family:'Playfair Display',serif;font-weight:600}
.content-intro{font-size:20px;line-height:1.5;color:var(--muted);max-width:600px;margin:32px 0}
.content-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.content-grid section{padding:34px 26px 38px 0;margin-right:26px}
.content-grid section+section{border-left:1px solid var(--line);padding-left:26px}
.content-grid h2,.related-links h2,.example-document h2{font-size:22px;letter-spacing:-.04em;margin:0 0 13px}
.content-grid p,.example-document{color:var(--muted);line-height:1.6}
.guide-content{max-width:800px;padding:72px 0 8px}
.guide-content section{padding:0 0 42px;border-bottom:1px solid var(--line)}
.guide-content section+section{padding-top:42px}
.guide-content h2,.guide-support h2{margin:0 0 18px;font-size:clamp(28px,3.5vw,42px);letter-spacing:-.045em}
.guide-content p,.guide-support p{max-width:700px;color:var(--muted);font-size:16px;line-height:1.72}
.guide-content p+p{margin-top:16px}
.guide-support{display:grid;grid-template-columns:1fr 1fr;gap:70px;padding:36px 0 12px;border-bottom:1px solid var(--line)}
.guide-support ul{margin:0;padding-left:20px;color:var(--muted);line-height:1.7}
.guide-support li+li{margin-top:8px}
.guide-support details{padding:13px 0;border-top:1px solid var(--line)}
.guide-support summary{cursor:pointer;font-weight:700;line-height:1.4}
.guide-support details p{margin:10px 0 0;font-size:14px;line-height:1.6}
.guide-links{padding-top:45px}
.related-links{padding-top:55px}
.related-links>div{display:flex;flex-wrap:wrap;gap:12px}
.related-links a{border:1px solid #c7c6bf;padding:11px 14px;font-size:13px;font-weight:600}
.example-document{max-width:760px;background:#fff;padding:clamp(28px,5vw,60px);box-shadow:12px 14px 0 #e6e4dc}
.example-document .eyebrow{margin-bottom:13px}
.example-summary{font:italic 26px/1.35 'Playfair Display',serif;color:var(--ink);margin:0}
.example-document hr{border:0;border-top:1px solid var(--line);margin:33px 0}
.example-document h2{color:var(--ink);margin-top:30px}
.example-document li{margin:9px 0}
.seo-links{margin:74px 0 15px}
.seo-links>div{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.seo-links a{padding:22px 18px 22px 0;font-weight:700;font-size:15px}
.seo-links a{border-left:1px solid var(--line);padding-left:18px}
.seo-links b{color:var(--red);float:right}
@media(max-width:650px){.content-shell{padding:22px 22px 55px}
.content-hero{padding:85px 0 60px}
.content-intro{font-size:17px}
.content-grid{grid-template-columns:1fr}
.content-grid section,.content-grid section+section{margin:0;padding:27px 0;border-left:0}
.content-grid section+section{border-top:1px solid var(--line)}
.guide-support{grid-template-columns:1fr;gap:38px}
.seo-links>div{grid-template-columns:1fr}
.seo-links a,.seo-links a+a{padding:16px 0;border-left:0}
.seo-links a+a{border-top:1px solid var(--line)}
.nav-actions{gap:12px}
.nav-actions a{display:none}
.example-document{padding:28px}
.example-summary{font-size:22px}
}


/* seo showcases */
.showcase-section{padding:80px 0 5px}
.showcase-section>h2{max-width:580px;font-size:clamp(32px,4vw,54px);line-height:.94;letter-spacing:-.06em;margin:0 0 34px}
.template-showcase,.example-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.template-card,.example-cards>a{display:block;background:#fff;border:1px solid var(--line);padding:20px;transition:transform .2s,box-shadow .2s}
.template-card:hover,.example-cards>a:hover{transform:translateY(-4px);box-shadow:8px 10px 0 #e4e2da}
.template-sheet{min-height:230px;padding:28px 24px;background:#fafafa;border:1px solid #e7e5df;color:#272621}
.template-card.bold .template-sheet{border-top:8px solid var(--red)}
.template-card.minimal .template-sheet{text-align:center}
.template-sheet strong{display:block;font-size:22px;letter-spacing:-.06em}
.template-sheet small{color:#777}
.template-sheet hr{border:0;border-top:1px solid #ddd;margin:21px 0}
.template-sheet b{display:block;color:var(--red);font:9px 'DM Mono',monospace;letter-spacing:.1em;text-transform:uppercase;margin-top:14px}
.template-sheet i{display:block;height:7px;background:#e4e2dc;margin-top:7px;width:82%}
.template-card h3,.example-cards h3{font-size:19px;letter-spacing:-.04em;margin:17px 0 7px}
.template-card p,.example-cards p{font-size:13px;line-height:1.5;color:var(--muted);margin:0 0 16px}
.template-card span,.example-cards span{color:var(--red);font-size:13px;font-weight:700}
.example-cards{grid-template-columns:repeat(2,1fr)}
.example-cards>a{min-height:190px}
.example-cards .eyebrow{margin:0 0 10px}
.example-cards h3{margin-top:0}
@media(max-width:650px){.template-showcase,.example-cards{grid-template-columns:1fr}
.showcase-section{padding-top:60px}
}


/* brand theme */
/* Final shared visual language for landing, builder and PDF editor. */
.landing-shell{min-height:100vh;background:#0a0a0a;color:#fff}
.landing-shell .topbar{display:flex;align-items:center;justify-content:space-between}
.landing-shell .nav-actions{display:flex;align-items:center;gap:20px}
.landing-shell .nav-actions>a{color:#b7b7b7;font-size:13px;font-weight:700}
.landing-shell .nav-actions>a:hover{color:#ff4d9d}
.landing-shell .hero{max-width:1160px}
.landing-shell .hero h1{font-weight:800; margin: 10px}
.landing-shell .seo-links{margin:74px 0 0;padding-top:0}
.landing-shell .seo-links>div{border-color:#292929}
.landing-shell .seo-links a{color:#e8e8e8;border-color:#292929}
.landing-shell .seo-links a:hover{color:#ff4d9d}

.pdf-editor{background:#0a0a0a}
.pdf-welcome{background:#0a0a0a;color:#fff}
.pdf-welcome-nav{border-color:#292929}
.pdf-welcome .pdf-editor-brand{color:#fff}
.privacy-chip{color:#aaa}
.privacy-chip i{background:#ff4d9d;box-shadow:0 0 0 4px rgba(255,77,157,.12)}
.welcome-copy h1{color:#fff;font-family:'DM Sans',sans-serif;font-weight:800}
.welcome-copy h1 em{font-family:inherit;font-style:normal}
.welcome-copy>p:not(.welcome-kicker){color:#b7b7b7}
.welcome-kicker{color:#ff4d9d}
.welcome-trust{border-color:#292929;color:#7c7c7c}
.pdf-drop{background:#141414;border:1px solid #333;box-shadow:none;border-radius:24px}
.pdf-drop:hover,.pdf-drop.dragging{transform:translateY(-4px);box-shadow:none;border-color:#ff4d9d;outline:0}
.drop-icon{background:#1d1d1d;border-color:#363636}
.drop-icon svg{stroke:#ff4d9d}
.pdf-drop>b{border-radius:999px;background:#ff4d9d;color:#0a0a0a;font-weight:800}
.welcome-footnote{color:#777}
.pdf-editor-brand span{background:#ff4d9d}
.editor-app .pdf-editor-brand{color:#fff}

@media(max-width:650px){.landing-shell .nav-actions>a{display:none}
.landing-shell .nav-actions .free-pill{display:inline-block}
.pdf-welcome-nav{height:68px}
.welcome-grid{padding:55px 0}
.pdf-drop{box-shadow:none}
}


/* match cv */
.match-page{min-height:100vh;background:#0a0a0a;color:#fff}
.match-intro{max-width:830px;margin:0 auto;padding:72px 32px 48px}
.match-intro h1{margin:0;font-size:clamp(52px,8vw,104px);letter-spacing:-.02em;line-height:.84}
.match-intro>p:last-child{max-width:570px;margin:28px 0 0;color:#b7b7b7;font-size:18px;line-height:1.5}
.match-flow{max-width:900px;margin:0 auto;padding:0 32px 100px}
.match-step{display:grid;grid-template-columns:90px 1fr;gap:26px;padding:38px 0;border-top:1px solid #292929}
.step-number{padding-top:2px;color:#ff4d9d;font:12px 'DM Mono',monospace;letter-spacing:.1em}
.match-step h2{margin:5px 0 18px;font-size:28px;letter-spacing:-.045em}
.match-copy{max-width:590px;margin:0 0 20px;color:#aaa;font-size:14px;line-height:1.55}
.match-dropzone{min-height:190px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;border:2px dashed #3a3a3a;border-radius:20px;background:#101010;cursor:pointer;text-align:center}
.match-dropzone:hover{border-color:#ff4d9d;background:#141014}
.match-dropzone input{display:none}
.match-dropzone b{font-size:30px;color:#ff4d9d}
.match-dropzone strong{font-size:17px}
.match-dropzone small{color:#8c8c8c;font-size:12px}
.match-alt{font-size:12px;color:#888}
.match-alt a{color:#ff4d9d}
.job-list{display:grid;gap:10px}
.job-url{display:grid;grid-template-columns:65px 1fr;align-items:center;gap:12px;padding:11px 13px;background:#141414;border:1px solid #2a2a2a;border-radius:12px}
.job-url span{color:#aaa;font:10px 'DM Mono',monospace}
.job-url input,.match-fallback textarea{width:100%;border:0;outline:0;background:transparent;color:#fff;font-size:13px}
.job-url input::placeholder,.match-fallback textarea::placeholder{color:#696969}
.add-job{margin-top:12px;border:1px solid #333;border-radius:999px;background:#141414;color:#fff;padding:9px 13px;font-size:12px;font-weight:700;cursor:pointer}
.add-job span{margin-left:18px;color:#888;font-weight:400}
.add-job:disabled{opacity:.5;cursor:default}
.match-fallback textarea{display:block;min-height:155px;padding:15px;background:#141414;border:1px solid #2a2a2a;border-radius:12px;line-height:1.5;resize:vertical}
.match-submit{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:28px 0;border-top:1px solid #292929}
.match-submit div{display:flex;flex-direction:column;gap:4px}
.match-submit b{color:#ff4d9d;font-size:14px}
.match-submit span{color:#aaa;font-size:12px}
.match-submit button{border:0;border-radius:999px;padding:14px 20px;background:#ff4d9d;color:#0a0a0a;font-weight:800;cursor:pointer}
@media(max-width:620px){.match-intro,.match-flow{padding-left:22px;padding-right:22px}
.match-intro{padding-top:52px}
.match-step{grid-template-columns:1fr;gap:12px}
.match-submit{align-items:flex-start;flex-direction:column}
.match-submit button{width:100%}
}


/* match auth */
.job-description{display:block;width:100%;min-height:190px;padding:15px;border:1px solid #2a2a2a;border-radius:12px;outline:0;background:#141414;color:#fff;font:13px/1.5 'DM Sans',sans-serif;resize:vertical}
.tailored-cv{white-space:pre-wrap;max-height:420px;overflow:auto;padding:18px;background:#141414;border:1px solid #2a2a2a;border-radius:12px;color:#ddd;font:12px/1.55 'DM Mono',monospace}
.auth-page{display:grid;min-height:100vh;place-items:center;padding:24px}
.auth-card{width:min(100%,460px);padding:36px;background:#141414;border:1px solid #292929;border-radius:20px}
.auth-card h1{margin:7px 0 12px;font-size:40px;letter-spacing:-.06em}
.auth-card>p:not(.eyebrow){color:#aaa;font-size:14px;line-height:1.5}
.auth-card input{display:block;width:100%;margin-top:25px;padding:14px;border:1px solid #333;border-radius:12px;outline:0;background:#0a0a0a;color:#fff}
.auth-card input:focus{border-color:#ff4d9d}
.auth-card input[type="submit"]{border:0;background:#ff4d9d;color:#0a0a0a;font-weight:800;cursor:pointer}


/* match wizard */
.wizard-screen{min-height:calc(100vh - 68px)}
.wizard-content{width:min(calc(100% - 64px),720px);margin:0 auto;padding:0 0 100px}
.wizard-content .match-dropzone{min-height:270px}
.wizard-next{width:100%;margin-top:25px;border:0;border-radius:999px;padding:15px;background:#ff4d9d;color:#0a0a0a;font-weight:800;cursor:pointer}
.wizard-next:disabled{opacity:.4;cursor:not-allowed}
.wizard-back{margin-top:24px;border:0;background:transparent;color:#999;cursor:pointer;font-size:12px}
@media(max-width:620px){.wizard-content{width:calc(100% - 44px)}
}


/* account center */
.account-page{min-height:100vh;background:#0a0a0a;color:#fff}
.builder-header nav{display:flex;align-items:center;gap:18px}
.builder-header nav a{color:#aaa;font-size:12px}
.builder-header nav .account-email{padding:8px 11px;border:1px solid #303030;border-radius:999px;color:#fff}
.site-actions{display:flex;align-items:center;gap:12px}.site-actions a{color:#aaa;font-size:12px;font-weight:700}.site-actions .free-pill{color:#000!important}
.account-shell{display:grid;grid-template-columns:280px minmax(0,1fr);min-height:calc(100vh - 68px)}
.account-sidebar{padding:40px 28px;border-right:1px solid #222}
.account-sidebar h2{margin:7px 0 13px;font-size:28px;letter-spacing:-.06em}
.account-sidebar>p:not(.eyebrow){color:#999;font-size:13px;line-height:1.5}
.new-match-link{display:block;margin-top:30px;padding:12px 14px;background:#ff4d9d;border-radius:999px;color:#0a0a0a;font-size:12px;font-weight:800}
.match-workspace{max-width:930px;width:100%;padding:42px clamp(25px,6vw,70px);margin:0 auto}
.workspace-head{display:flex;align-items:end;justify-content:space-between;padding-bottom:28px;border-bottom:1px solid #292929}
.workspace-head h1{margin:6px 0 0;font-size:34px;letter-spacing:-.06em}
.workspace-head>span{color:#888;font:10px 'DM Mono',monospace}
.job-results{display:grid;gap:13px;margin-top:25px}
.job-result{border:1px solid #2b2b2b;background:#111;padding:20px}
.job-result>header{display:flex;align-items:flex-start;justify-content:space-between}
.job-result header>div{display:grid;grid-template-columns:9px 1fr;column-gap:10px}
.status-dot{grid-row:span 2;width:8px;height:8px;margin-top:5px;border-radius:50%;background:#777}
.job-completed .status-dot{background:#ff4d9d}
.job-processing .status-dot,.job-queued .status-dot{background:#ffbe42}
.job-result header p{margin:0;color:#888;font:9px 'DM Mono',monospace;text-transform:uppercase;letter-spacing:.12em}
.job-result header h2{margin:5px 0 0;font-size:16px;letter-spacing:-.035em}
.job-count{color:#777;font:10px 'DM Mono',monospace}
.job-message{display:flex;flex-direction:column;gap:5px;margin-top:22px;padding-top:17px;border-top:1px solid #282828;color:#aaa;font-size:12px}
.job-message b{color:#fff}
.job-message.error b{color:#ff7777}
.job-message.progress{flex-direction:row;align-items:center}
.spinner{width:18px;height:18px;border:2px solid #555;border-top-color:#ff4d9d;border-radius:50%;animation:spin .8s linear infinite}
.cv-result{display:flex;align-items:center;justify-content:space-between;margin-top:22px;padding-top:17px;border-top:1px solid #282828}
.cv-result h3{margin:0;font-size:15px}
.cv-result p{margin:5px 0 0;color:#999;font-size:12px}
.cv-result button,.description-request input[type="submit"]{border:0;border-radius:999px;padding:10px 13px;background:#ff4d9d;color:#0a0a0a;font-size:11px;font-weight:800;cursor:pointer}
.job-result pre{max-height:360px;overflow:auto;margin:18px 0 0;padding:17px;background:#090909;color:#d8d8d8;font:11px/1.55 'DM Mono',monospace;white-space:pre-wrap}
.description-request{margin-top:27px;padding:22px;border:1px solid #ff4d9d;background:#1a0f16}
.description-request h3{margin:0;font-size:19px}
.description-request>p{color:#aaa;font-size:12px}
.description-request label{display:block;margin:17px 0;font-size:12px}
.description-request textarea{display:block;width:100%;min-height:140px;margin-top:8px;padding:12px;border:1px solid #333;background:#0a0a0a;color:#fff;resize:vertical}
.saved-matches{display:grid;margin-top:24px;border-top:1px solid #292929}
.saved-matches a{display:grid;grid-template-columns:100px 1fr 1.4fr 20px;gap:15px;align-items:center;padding:18px 0;border-bottom:1px solid #292929;color:#fff}
.saved-matches span,.saved-matches small{color:#888;font-size:11px}
.saved-matches b{color:#ff4d9d}
@media(max-width:700px){.account-shell{grid-template-columns:1fr}
.account-sidebar{border-right:0;border-bottom:1px solid #222;padding:28px 22px}
.match-workspace{padding:30px 22px}
.builder-header nav a:first-child{display:none}
.saved-matches a{grid-template-columns:1fr 20px}
.saved-matches span,.saved-matches small{display:none}
.cv-result{align-items:flex-start;gap:15px;flex-direction:column}
}
.feat {
  display: inline-block;
  color: #000;
  text-decoration: none;
  text-align: center;
  line-height: normal;
  -webkit-appearance: none;
  background-color: #2cebff;
  border: 0;
  margin-top: 20px;
  box-shadow: none;
  clip-path: polygon(5% 10%, 4% 12%, 20% 10%, 100% 0, 95% 90%, 31% 100%, 31% 90%, 0% 100%);
  font-weight: bold;
  padding: 39px;
}
