/* Readable interface defaults, independent of the CV canvas. */
:root { --ui-font-scale:1; }
.builder-topbar .locale-button { color:#65567c; }
.section-card-head b { min-width:0; overflow-wrap:anywhere; }
.site-header { min-height:86px; height:auto; padding-block:13px; gap:20px; }
.site-header nav { font-size:calc(14px * var(--ui-font-scale)); gap:26px; }
.brand-word { font-size:calc(19px * var(--ui-font-scale)); }
.locale-button { font-size:calc(13px * var(--ui-font-scale)); }
.button { font-size:calc(14px * var(--ui-font-scale)); padding:14px 20px; }
.button-small { font-size:calc(13px * var(--ui-font-scale)); padding:11px 15px; }
.hero-v2 { padding-top:156px; }
.hero-copy-v2 h1 { font-size:clamp(52px,6vw,80px); }
.pill { font-size:calc(12px * var(--ui-font-scale)); }
.hero-copy-v2>p { font-size:calc(17px * var(--ui-font-scale)); line-height:1.9; }
.hero-link { font-size:calc(14px * var(--ui-font-scale)); }
.hero-points { font-size:calc(12px * var(--ui-font-scale)); gap:14px; }
.hero-bottom { font-size:calc(11px * var(--ui-font-scale)); }
.section-kicker { font-size:calc(13px * var(--ui-font-scale)); }
.feature-list h3 { font-size:calc(18px * var(--ui-font-scale)); }
.feature-list p,.templates-heading p { font-size:calc(15px * var(--ui-font-scale)); line-height:1.9; }
.templates-heading p { max-width:360px; }
.feature-list article { padding-block:21px; }
.template-label { font-size:11px; gap:6px; flex-wrap:wrap; }
.template-label i { font-size:calc(11px * var(--ui-font-scale)); }
.template-name>b { font-size:calc(15px * var(--ui-font-scale)); padding-inline-end:20px; }
.template-name>small { font-size:calc(12px * var(--ui-font-scale)); line-height:1.7; }
.gallery-footer,.text-button { font-size:calc(13px * var(--ui-font-scale)); }
.how-steps h3 { font-size:calc(17px * var(--ui-font-scale)); }
.how-steps p { font-size:calc(14px * var(--ui-font-scale)); line-height:1.9; }
.how-steps article { padding-block:20px; }
.site-footer { font-size:calc(12px * var(--ui-font-scale)); gap:16px; min-height:80px; height:auto; padding-block:20px; flex-wrap:wrap; }
.site-footer .brand-word { font-size:calc(16px * var(--ui-font-scale)); }
/* Editable interface: readable defaults. */
.builder-topbar { min-height:70px; height:auto; padding:12px 20px; gap:14px; flex-wrap:wrap; }
.builder-top-actions { gap:12px; flex-wrap:wrap; }
.back-home { font-size:calc(13px * var(--ui-font-scale)); }
.builder-brand { font-size:12px; }
.builder-brand b { font-size:calc(13px * var(--ui-font-scale)); }
.save-status { font-size:calc(11px * var(--ui-font-scale)); }
.button-export { font-size:calc(13px * var(--ui-font-scale)); padding:10px 14px; }
.setup-intro p { font-size:calc(16px * var(--ui-font-scale)); }
.setup-card { padding:20px; }
.setup-card-top>b { font-size:calc(16px * var(--ui-font-scale)); }
.setup-card-top>span { font-size:11px; }
.choice { padding:14px; }
.choice b { font-size:calc(16px * var(--ui-font-scale)); }
.choice small { font-size:calc(12px * var(--ui-font-scale)); }
.choice-system { padding:13px 11px; }
.choice-system>b { font-size:calc(13px * var(--ui-font-scale)); }
.choice-system>small { font-size:calc(11px * var(--ui-font-scale)); }
.start-option { padding:13px 12px; }
.start-option b { font-size:calc(13px * var(--ui-font-scale)); }
.start-option small { font-size:calc(11px * var(--ui-font-scale)); }
.setup-footer,.restore-draft { font-size:calc(12px * var(--ui-font-scale)); }
.setup-footer { flex-wrap:wrap; gap:16px; }
.workspace-screen { grid-template-columns:minmax(340px,29%) minmax(340px,1fr) 245px; height:calc(100dvh - 70px); min-height:650px; }
.sidebar-heading small { font-size:calc(11px * var(--ui-font-scale)); }
.sidebar-heading b { font-size:calc(16px * var(--ui-font-scale)); }
.sidebar-tab { font-size:calc(14px * var(--ui-font-scale)); padding:10px; }
.section-progress>div:first-child { font-size:calc(13px * var(--ui-font-scale)); }
.section-progress b { font-size:13px; }
.section-progress small { font-size:calc(11px * var(--ui-font-scale)); }
.personal-fields { gap:12px 10px; padding-block:17px; }
.edit-field>span { font-size:calc(12px * var(--ui-font-scale)); }
.edit-field input,.edit-field textarea,.edit-field select { font-size:calc(14px * var(--ui-font-scale)); padding:10px; min-height:42px; }
.section-card-body .edit-field input,.section-card-body .edit-field textarea { padding:9px; }
.edit-field textarea { min-height:75px; }
.sections-title { font-size:calc(14px * var(--ui-font-scale)); padding-block:12px; }
.section-card-head { min-height:43px; height:auto; padding:9px; flex-wrap:wrap; }
.section-card-head b { font-size:calc(14px * var(--ui-font-scale)); }
.section-tools button,.entry-tools button { width:26px; height:28px; font-size:14px; }
.section-card-body { padding:12px; gap:10px; }
.entry-card { gap:9px; }
.entry-heading b { font-size:calc(12px * var(--ui-font-scale)); }
.add-entry,.add-section-button { font-size:calc(13px * var(--ui-font-scale)); height:auto; min-height:42px; padding:9px; }
.section-picker { position:static; padding:10px; gap:8px; }
.section-picker button { font-size:calc(12px * var(--ui-font-scale)); padding:10px 8px; }
.design-group>b { font-size:calc(14px * var(--ui-font-scale)); }
.design-choices,.font-choices { flex-wrap:wrap; }
.design-choices button,.font-choices button { font-size:calc(12px * var(--ui-font-scale)); padding:10px 6px; }
.design-tip p { font-size:calc(12px * var(--ui-font-scale)); }
.canvas-toolbar { min-height:49px; height:auto; padding-block:10px; gap:12px; flex-wrap:wrap; }
.canvas-label { font-size:calc(12px * var(--ui-font-scale)); }
.canvas-label small { font-size:calc(10px * var(--ui-font-scale)); }
.canvas-controls { font-size:11px; }
.canvas-controls button { height:28px; min-width:28px; font-size:13px; }
.canvas-controls button:last-child { font-size:calc(11px * var(--ui-font-scale)); }
.canvas-bottom { font-size:calc(10px * var(--ui-font-scale)); min-height:36px; height:auto; padding-block:8px; gap:10px; }
.quality-title { font-size:calc(14px * var(--ui-font-scale)); }
.score-card b { font-size:calc(13px * var(--ui-font-scale)); }
.score-card>div>small { font-size:calc(11px * var(--ui-font-scale)); }
.review-item { gap:9px; padding:11px 8px; }
.review-item>b { font-size:calc(12px * var(--ui-font-scale)); }
.review-item small { font-size:calc(10px * var(--ui-font-scale)); }
.quality-disclaimer { font-size:calc(10px * var(--ui-font-scale)); }
.download-wide { font-size:calc(13px * var(--ui-font-scale)); padding:13px; }
.toast { font-size:calc(13px * var(--ui-font-scale)); }
@media(min-width:821px) and (max-width:1180px) {
  .workspace-screen { grid-template-columns:360px minmax(0,1fr); }
  .quality-rail { grid-column:1/-1; border-inline-start:0; border-top:1px solid #e5e6ec; }
  .site-header { padding-inline:24px; }
  .site-header nav { gap:16px; }
  .site-header .header-actions { gap:9px; }
}
@media(max-width:900px) {
  .site-header nav { display:none; }
  .builder-brand>span:not(.brand-symbol),.builder-brand>i { display:none; }
  .save-status { display:none; }
  .setup-screen { gap:28px; grid-template-columns:.6fr 1.4fr; }
  .choice-grid { grid-template-columns:repeat(2,1fr); }
}
@media(max-width:820px) {
  .workspace-screen { grid-template-columns:340px minmax(0,1fr); height:auto; }
  .quality-rail { display:block; }
  .score-card { margin-block:12px; }
  .review-list { display:grid; grid-template-columns:1fr 1fr; }
  .download-wide { margin-top:12px; }
  .hero-copy-v2>p { font-size:calc(16px * var(--ui-font-scale)); }
}
@media(max-width:600px) {
  .site-header { padding:12px 14px; gap:12px; align-items:center; }
  .site-header .brand-word { font-size:17px; }
  .site-header .header-actions { gap:5px; }
  .site-header .button-small { display:none; }
  .hero-v2 { padding-top:125px; }
  .hero-copy-v2 h1 { font-size:54px; }
  .hero-ctas { gap:16px; flex-wrap:wrap; }
  .hero-points { font-size:calc(11px * var(--ui-font-scale)); }
  .hero-bottom { font-size:9px; gap:12px; }
  .feature-list h3 { font-size:calc(16px * var(--ui-font-scale)); }
  .feature-list p { font-size:calc(14px * var(--ui-font-scale)); }
  .template-name>b { font-size:calc(14px * var(--ui-font-scale)); }
  .template-name>small { font-size:calc(11px * var(--ui-font-scale)); }
  .template-label { font-size:8px; }
  .gallery-footer { align-items:start; font-size:calc(12px * var(--ui-font-scale)); }
  .site-footer>span { font-size:11px; }
  .builder-topbar { padding:10px; gap:8px; position:sticky; }
  .builder-brand { display:none; }
  .back-home { font-size:calc(12px * var(--ui-font-scale)); }
  .builder-top-actions { gap:5px; margin-inline-start:auto; }
  .button-export { padding:9px; font-size:calc(11px * var(--ui-font-scale)); }
  .builder-top-actions .locale-button { font-size:calc(12px * var(--ui-font-scale)); }
  .setup-screen { display:block; }
  .setup-footer-actions { flex-wrap:wrap; }
  .setup-footer .button { font-size:calc(13px * var(--ui-font-scale)); }
  .workspace-screen { display:flex; height:auto; }
  .editor-sidebar { padding:16px; }
  .quality-rail { display:block; }
  .canvas-area { height:650px; }
}
@media print {
}

/* Arabic uses connected letters and combining marks: do not tighten its tracking.
   Scope excludes the editable CV and its printable document. */
html[dir="rtl"] :is(#siteView,.builder-topbar,.setup-screen,.library-screen,.editor-sidebar,.quality-rail,.canvas-toolbar,.canvas-bottom,dialog) :where(h1,h2,h3,h4,p,span,b,strong,a,button,label,summary,input,textarea,select,small) {
  letter-spacing:normal;
  word-spacing:normal;
}
html[dir="rtl"] :is(.hero-copy-v2 h1,.feature-heading h2,.templates-heading h2,.how-v2 h2,.final-cta h2,.platform-section-heading h2,.catalog-intro h1,.catalog-category-heading h2,.catalog-detail-description h1,.setup-intro h1,.import-panel-v2 h2,.ats-page-intro h1) {
  line-height:1.55;
  word-spacing:.035em;
  overflow:visible;
}
html[dir="rtl"] :is(.hero-copy-v2 h1,.feature-heading h2,.templates-heading h2,.how-v2 h2,.final-cta h2,.platform-section-heading h2) {
  font-weight:500;
}
