:root{--app-bg:#f6f7f4;--app-surface:#fff;--app-ink:#17352c;--app-text:#263c35;--app-muted:#62716b;--app-line:#d9ded8;--app-primary:#16815d;--app-primary-dark:#0f6648;--app-soft:#eaf2ed;--app-warning:#9a4c36;--app-sidebar:#17352c;--app-sidebar-text:#edf4f0;--app-sidebar-muted:#aebeb7;--app-display:'Libre Baskerville',Georgia,serif;--app-sans:'IBM Plex Sans',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;--app-radius:6px;--app-sidebar-width:272px;--app-topbar-height:68px}body.managecv-app-view,body.managecv-auth-view{margin:0;background:var(--app-bg);color:var(--app-text);font-family:var(--app-sans);letter-spacing:0}body.managecv-app-view #wpadminbar{display:none}html:has(body.managecv-app-view){margin-top:0!important}.managecv-app-view *,.managecv-auth-view *{box-sizing:border-box}.managecv-app-view a,.managecv-auth-view a{text-underline-offset:.18em}.managecv-app-view :focus-visible,.managecv-auth-view :focus-visible{outline:3px solid color-mix(in srgb,var(--app-primary) 42%,transparent);outline-offset:3px}.managecv-app-view .skip-link,.managecv-auth-view .skip-link{position:fixed;top:1rem;left:1rem;z-index:1000;padding:.7rem 1rem;background:var(--app-ink);color:var(--app-surface);transform:translateY(-180%)}.managecv-app-view .skip-link:focus,.managecv-auth-view .skip-link:focus{transform:none}.app-workspace{min-height:100vh}.app-sidebar{position:fixed;inset:0 auto 0 0;z-index:80;width:var(--app-sidebar-width);display:flex;flex-direction:column;padding:1.25rem;background:var(--app-sidebar);color:var(--app-sidebar-text);overflow-y:auto}.app-sidebar-brand{display:flex;align-items:center;justify-content:space-between;min-height:44px;padding:0 .65rem 1.4rem;border-bottom:1px solid color-mix(in srgb,var(--app-sidebar-text) 14%,transparent)}.app-sidebar-brand .brand{color:var(--app-sidebar-text);font-family:var(--app-display);font-size:1.45rem;text-decoration:none}.app-sidebar-brand .brand span{color:#76d0ad}.app-nav-title{margin:1.35rem .65rem .45rem;color:var(--app-sidebar-muted);font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.app-sidebar ul{display:flex;flex-direction:column;gap:.2rem;padding:0;margin:0;list-style:none}.app-sidebar-nav a{display:flex;align-items:center;gap:.75rem;min-height:42px;padding:.55rem .65rem;border-radius:var(--app-radius);color:var(--app-sidebar-text);font-size:.9rem;font-weight:600;text-decoration:none}.app-sidebar-nav a:hover,.app-sidebar-nav a:focus-visible{background:color-mix(in srgb,var(--app-sidebar-text) 10%,transparent)}.app-sidebar-nav a[aria-current=page]{background:var(--app-surface);color:var(--app-ink)}.app-nav-icon{width:19px;height:19px;flex:0 0 19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.app-sidebar-spacer{flex:1;min-height:1rem}.app-nav-plan{padding:1rem;margin-top:1.25rem;border:1px solid color-mix(in srgb,var(--app-sidebar-text) 18%,transparent);border-radius:var(--app-radius);background:color-mix(in srgb,var(--app-sidebar-text) 5%,transparent)}.app-plan-label{margin:0 0 .2rem;color:var(--app-sidebar-muted);font-size:.7rem;text-transform:uppercase;letter-spacing:.06em}.app-plan-value{margin:0 0 .85rem;font-weight:650}.app-nav-plan .button{width:100%;min-height:36px;background:var(--app-surface);border-color:var(--app-surface);color:var(--app-ink);font-size:.78rem}.app-sidebar-user{display:grid;grid-template-columns:36px minmax(0,1fr);gap:.7rem;align-items:center;padding:1rem .3rem 0;margin-top:1rem;border-top:1px solid color-mix(in srgb,var(--app-sidebar-text) 14%,transparent)}.app-sidebar-user strong,.app-sidebar-user span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-sidebar-user strong{font-size:.85rem}.app-sidebar-user span{color:var(--app-sidebar-muted);font-size:.72rem}.app-sidebar-signout{grid-column:1/-1;color:var(--app-sidebar-muted);font-size:.78rem}.app-avatar{display:grid;width:34px;height:34px;place-items:center;border-radius:50%;background:var(--app-soft);color:var(--app-ink);font-size:.78rem;font-weight:750}.app-workspace-main{min-height:100vh;margin-left:var(--app-sidebar-width)}.app-topbar{position:sticky;top:0;z-index:50;height:var(--app-topbar-height);display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:0 clamp(1rem,3vw,2.25rem);border-bottom:1px solid var(--app-line);background:color-mix(in srgb,var(--app-surface) 96%,transparent)}.app-topbar-leading,.app-topbar-actions{display:flex;align-items:center;gap:.75rem}.app-topbar-title{margin:0;color:var(--app-ink);font-size:.86rem;font-weight:650}.app-nav-toggle{display:none;width:42px;height:42px;place-items:center;padding:0;border:1px solid var(--app-line);border-radius:var(--app-radius);background:var(--app-surface);color:var(--app-ink)}.app-nav-toggle svg,.app-user-menu summary svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.app-user-menu{position:relative}.app-user-menu summary{display:flex;align-items:center;gap:.55rem;min-height:42px;padding:.25rem .4rem;border-radius:var(--app-radius);cursor:pointer;list-style:none}.app-user-menu summary::-webkit-details-marker{display:none}.app-user-menu ul{position:absolute;top:calc(100% + .45rem);right:0;min-width:190px;padding:.4rem;margin:0;border:1px solid var(--app-line);border-radius:var(--app-radius);background:var(--app-surface);box-shadow:0 14px 32px rgba(23,53,44,.12);list-style:none}.app-user-menu li+li{border-top:1px solid var(--app-line)}.app-user-menu a{display:block;padding:.65rem .7rem;color:var(--app-text);font-size:.84rem;text-decoration:none}.app-user-menu a:hover,.app-user-menu a:focus-visible{background:var(--app-soft)}.app-content{width:min(100%,1240px);min-width:0;padding:clamp(1.5rem,4vw,3.25rem);outline:none}.managecv-app-view .button,.managecv-auth-view .button{min-height:42px;display:inline-flex;align-items:center;justify-content:center;padding:.62rem 1rem;border:1px solid var(--app-primary);border-radius:var(--app-radius);background:var(--app-primary);color:#fff;font-family:var(--app-sans);font-size:.88rem;font-weight:650;text-decoration:none;transition:background .16s ease,border-color .16s ease}.managecv-app-view .button:hover,.managecv-auth-view .button:hover{background:var(--app-primary-dark);border-color:var(--app-primary-dark);transform:none}.managecv-app-view .button-small{min-height:36px;padding:.45rem .75rem;font-size:.8rem}.managecv-app-view .button-ghost{background:var(--app-surface);border-color:var(--app-line);color:var(--app-ink)}.managecv-app-view .button-ghost:hover{background:var(--app-soft);border-color:var(--app-line)}.managecv-app-view .button-danger{background:var(--app-surface);border-color:#d9b7ac;color:var(--app-warning)}.managecv-app-view .button-danger:hover{background:var(--app-warning);border-color:var(--app-warning);color:#fff}.app-page-head{max-width:780px;margin:0 0 2rem}.app-page-head h1{margin:.2rem 0 .55rem;color:var(--app-ink);font:600 clamp(1.9rem,3vw,2.7rem)/1.16 var(--app-display);letter-spacing:0}.app-page-head>p:not(.eyebrow){max-width:680px;margin:0;color:var(--app-muted);font-size:1rem}.managecv-app-view .eyebrow{margin:0 0 .55rem;color:var(--app-primary);font-family:var(--app-sans);font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.managecv-app-view .eyebrow a{text-decoration:none}.app-cards,.app-cv-grid,.app-plan-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1rem;padding:0;margin:0 0 2rem;list-style:none}.app-card,.app-cv-card,.app-plan-card,.repeatable-row{padding:1.35rem;border:1px solid var(--app-line);border-radius:var(--app-radius);background:var(--app-surface)}.app-card-primary,.app-cv-card.is-current,.app-plan-card.is-current{border-color:var(--app-primary);box-shadow:inset 3px 0 0 var(--app-primary)}.app-card h2,.app-card h3,.app-cv-card h2,.app-cv-card h3,.app-plan-card h2,.app-plan-card h3,.app-section h2,.recovery-panel h2,.app-preview-pane h2{margin:0 0 .6rem;color:var(--app-ink);font:600 1.25rem/1.3 var(--app-display);letter-spacing:0}.app-card p,.app-plan-card p{color:var(--app-muted)}.app-card-actions,.app-actions-bar,.app-form-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem;margin:1rem 0 0}.app-actions-bar{padding:1rem;margin:0 0 1.5rem;border:1px solid var(--app-line);border-radius:var(--app-radius);background:var(--app-surface)}.app-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;padding:0;margin:0;list-style:none}.app-stats li{min-width:0}.app-stats strong{display:block;overflow:hidden;color:var(--app-ink);font:600 1.55rem var(--app-display);text-overflow:ellipsis}.app-stats span,.app-meta,.field-hint{color:var(--app-muted);font-size:.8rem}.app-score{margin:.25rem 0;color:var(--app-primary);font:600 2.8rem var(--app-display)}.app-section{padding-top:2rem;margin-top:2rem;border-top:1px solid var(--app-line)}.app-section-quiet{padding:1.35rem;margin-top:2rem;border:1px solid #e2c7bf;border-radius:var(--app-radius);background:#fffaf8;color:var(--app-muted)}.app-list{padding:0;margin:0;list-style:none}.app-list li{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem;min-height:54px;padding:.75rem .25rem;border-bottom:1px solid var(--app-line)}.app-list li>a{color:var(--app-ink);font-weight:650;text-decoration:none}.app-list li>a:hover{text-decoration:underline}.app-badge{display:inline-flex;align-items:center;min-height:23px;padding:.15rem .5rem;border:1px solid var(--app-line);border-radius:999px;background:var(--app-surface);color:var(--app-muted);font-size:.66rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.app-meta{display:flex;flex-wrap:wrap;gap:.7rem}.app-suggestions{padding-left:1.15rem;color:var(--app-muted)}.app-suggestions li{margin:.35rem 0}.app-form{max-width:780px}.app-form .form-row,.app-filters .form-row{display:flex;flex-direction:column;gap:.35rem;margin:0 0 1.05rem}.app-form label,.app-filters label{color:var(--app-ink);font-size:.82rem;font-weight:650}.app-form input,.app-form textarea,.app-form select,.app-filters input,.app-filters select,.app-inline-form input,.app-share-link input{width:100%;min-height:43px;padding:.65rem .75rem;border:1px solid #c8d0ca;border-radius:var(--app-radius);background:var(--app-surface);color:var(--app-text)}.app-form textarea{min-height:110px;resize:vertical}.app-form input:focus,.app-form textarea:focus,.app-form select:focus,.app-filters input:focus,.app-filters select:focus{border-color:var(--app-primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--app-primary) 13%,transparent);outline:0}.field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 1rem}.form-check{flex-direction:row!important;align-items:center}.form-check input{width:auto;min-height:0}.app-inline-form{display:flex;flex-wrap:wrap;align-items:end;gap:.6rem;margin:0 0 1rem}.app-inline-form input{width:auto}.app-filters{display:flex;flex-wrap:wrap;align-items:end;gap:.75rem;padding:1rem;margin-bottom:1.5rem;border:1px solid var(--app-line);border-radius:var(--app-radius);background:var(--app-surface)}.app-filters .form-row{min-width:180px;margin:0}.repeatable-row{margin:0 0 1rem}.repeatable-row legend{padding:0 .35rem;color:var(--app-muted);font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.app-progress{height:7px;margin:0 0 2rem;border-radius:999px;background:var(--app-line);overflow:hidden}.app-progress span{display:block;height:100%;background:var(--app-primary)}.app-review-links,.app-section-nav,.app-template-choices{display:flex;flex-wrap:wrap;gap:.55rem;padding:0;margin:1.25rem 0;list-style:none}.app-review-links a,.app-section-nav a{display:inline-flex;padding:.45rem .65rem;border:1px solid var(--app-line);border-radius:var(--app-radius);background:var(--app-surface);color:var(--app-ink);font-size:.8rem;text-decoration:none}.app-cv-card h2 a{text-decoration:none}.app-cv-card img{width:100%;aspect-ratio:4/5;object-fit:cover;margin-bottom:1rem;border:1px solid var(--app-line);border-radius:4px}.app-preview-pane{padding:clamp(1rem,3vw,2rem);border:1px solid var(--app-line);border-radius:var(--app-radius);background:#ecefeb;overflow:auto}.app-preview-pane>*{margin-inline:auto}.app-plan-features{padding-left:1.15rem;color:var(--app-muted)}.app-plan-price strong{color:var(--app-ink);font:600 1.75rem var(--app-display)}.app-table{width:100%;min-width:620px;border-collapse:collapse;background:var(--app-surface);font-size:.84rem}.app-table th,.app-table td{padding:.75rem;border-bottom:1px solid var(--app-line);text-align:left}.app-table th{color:var(--app-muted);font-size:.72rem;text-transform:uppercase;letter-spacing:.04em}.app-section:has(.app-table){overflow-x:auto}.app-notice{padding:.85rem 1rem;margin:0 0 1.25rem;border:1px solid var(--app-line);border-left:4px solid var(--app-primary);border-radius:var(--app-radius);background:var(--app-surface)}.app-notice.is-error{border-left-color:var(--app-warning)}.app-notice p{margin:0}.recovery-panel{max-width:680px;padding:1.5rem;border:1px dashed var(--app-line);border-radius:var(--app-radius);background:var(--app-surface)}.app-share-link{max-width:620px}.app-auth-shell{min-height:100vh;display:grid;grid-template-rows:auto 1fr auto;padding:1.25rem}.app-auth-brand,.app-auth-footer{width:min(100%,1120px);display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-inline:auto}.app-auth-brand .brand{color:var(--app-ink);font-family:var(--app-display);font-size:1.45rem;text-decoration:none}.app-auth-brand .brand span{color:var(--app-primary)}.app-auth-back,.app-auth-footer a{color:var(--app-muted);font-size:.8rem}.app-auth-main{width:min(100%,470px);align-self:center;margin:3rem auto;padding:clamp(1.5rem,4vw,2.5rem);border:1px solid var(--app-line);border-radius:var(--app-radius);background:var(--app-surface);box-shadow:0 18px 50px rgba(23,53,44,.08)}.app-auth-main .app-auth,.app-auth-main .app-form{max-width:none}.app-auth-main .app-page-head h1{font-size:2rem}.app-auth-main .button{width:100%}.app-auth-footer{justify-content:center;padding:1rem}.app-auth-footer a+a{margin-left:1rem}.app-sidebar-backdrop{position:fixed;inset:0;z-index:70;display:none;width:100%;height:100%;padding:0;border:0;background:rgba(12,26,21,.48)}
.app-payment-confirmation{padding:1.25rem}.app-payment-confirmation h2,.app-notice h2{margin:0 0 .45rem;color:var(--app-ink);font:600 1.2rem/1.3 var(--app-display)}.app-payment-confirmation p+p{margin-top:.85rem}
@media(max-width:960px){body.app-navigation-open{overflow:hidden}.app-sidebar{transform:translateX(-102%);transition:transform .2s ease}.app-sidebar.is-open{transform:none}.app-workspace-main{margin-left:0}.app-nav-toggle{display:grid}.app-sidebar-backdrop.is-open{display:block}.app-content{padding:clamp(1.25rem,4vw,2rem)}}
@media(max-width:640px){.app-topbar{padding:0 .75rem}.app-topbar-title,.app-user-name{display:none}.app-topbar-actions{gap:.4rem}.app-topbar-primary{padding-inline:.7rem}.app-content{padding:1.25rem .85rem 2.5rem}.app-page-head h1{font-size:1.8rem}.app-cards,.app-cv-grid,.app-plan-grid,.field-grid{grid-template-columns:1fr}.app-stats{gap:.55rem}.app-stats strong{font-size:1.25rem}.app-actions-bar{align-items:stretch;flex-direction:column}.app-actions-bar .button,.app-actions-bar form,.app-actions-bar form .button{width:100%}.app-inline-form{align-items:stretch;flex-direction:column}.app-inline-form input{width:100%}.app-filters{align-items:stretch;flex-direction:column}.app-filters .form-row{width:100%}.app-auth-shell{padding:.85rem}.app-auth-main{margin:2rem auto;padding:1.25rem}.app-auth-back{font-size:.75rem}}
@media(prefers-reduced-motion:reduce){.app-sidebar{transition:none!important}}.app-sidebar-user p{min-width:0;margin:0}.app-section-heading{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.65rem}.app-section-heading h2{margin:0}.app-section-heading a{color:var(--app-primary);font-size:.82rem;font-weight:650;text-decoration:none}.app-overview-grid{grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr)}.app-overview-grid .app-completion-card{grid-column:1/-1}.app-settings-section{max-width:820px;padding:1.4rem;margin-top:1rem;border:1px solid var(--app-line);border-radius:var(--app-radius);background:var(--app-surface)}.app-table-wrap{max-width:100%;overflow-x:auto;border:1px solid var(--app-line);border-radius:var(--app-radius);background:var(--app-surface)}.app-table-wrap:focus-visible{outline:3px solid color-mix(in srgb,var(--app-primary) 42%,transparent);outline-offset:3px}.app-table-wrap .app-table th:first-child,.app-table-wrap .app-table td:first-child{padding-left:1rem}.app-table-wrap .app-table th:last-child,.app-table-wrap .app-table td:last-child{padding-right:1rem}@media(max-width:720px){.app-overview-grid{grid-template-columns:1fr}.app-overview-grid .app-completion-card{grid-column:auto}}
.app-design-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1.25rem;padding:0;margin:0;list-style:none}
.app-design-card{display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--app-line);border-radius:var(--app-radius);background:var(--app-surface)}
.app-design-card.is-current{border-color:var(--app-primary);box-shadow:0 0 0 1px var(--app-primary)}
.app-design-preview{border-bottom:1px solid var(--app-line);background:#fff}
.app-design-meta{padding:.95rem 1rem 1.15rem}
.app-design-meta h3{margin:0 0 .3rem;color:var(--app-ink);font:600 1.02rem/1.3 var(--app-display)}
.app-design-meta form{margin-top:.75rem}
.app-preview-pane,.app-review{padding:1.25rem;margin:0 0 2rem;border:1px solid var(--app-line);border-radius:var(--app-radius);background:var(--app-surface)}

/* Optional CV photo control */
.photo-field{margin:0 0 1.5rem;padding:1.1rem 1.2rem;border:1px solid var(--app-line);border-radius:6px;background:var(--app-surface)}
.photo-field legend{padding:0 .35rem;font-family:'Libre Baskerville',Georgia,serif;font-size:.95rem;color:var(--app-ink)}
.photo-field-inner{display:flex;gap:1.2rem;align-items:flex-start;flex-wrap:wrap}
.photo-field-preview{flex:0 0 auto;width:96px;height:96px;border-radius:6px;object-fit:cover;border:1px solid var(--app-line);background:var(--app-soft)}
.photo-field-preview.is-empty{display:block}
.photo-field-controls{flex:1 1 260px;min-width:0}
.photo-field-controls .form-row{margin:0 0 .5rem}
.photo-field-controls input[type=file]{width:100%;max-width:100%;font-size:.92rem}
.photo-field-controls .field-hint{margin:0 0 .8rem}

/* Section arranging, checklist and background saving. */
.app-layout-list { list-style: decimal; margin: 0 0 1.25rem 1.25rem; padding: 0; }
.app-layout-row { display: flex; flex-wrap: wrap; gap: .75rem; align-items: center; padding: .65rem 0; border-bottom: 1px solid var(--app-line); }
.app-layout-name { flex: 1 1 10rem; font-weight: 600; }
.app-layout-position input { width: 4.5rem; }
.app-layout-heading { flex: 1 1 14rem; }
.app-layout-heading input { width: 100%; }
.app-layout-visible { display: inline-flex; gap: .35rem; align-items: center; white-space: nowrap; }
.app-layout-break { display: inline-flex; gap: .35rem; align-items: center; white-space: nowrap; }
.app-checklist { margin: 0; padding-left: 1.25rem; display: grid; gap: .6rem; }
.app-checklist li span.app-meta { display: block; }
.app-checklist li.is-done > a { text-decoration: line-through; }
.app-autosave-status { align-self: center; font-size: .85rem; color: var(--app-muted); }

.app-timeline { margin: 0; padding: 0; list-style: none; display: grid; gap: .75rem; border-left: 2px solid var(--app-line); padding-left: 1rem; }
.app-timeline li { position: relative; }
.app-timeline li::before { content: ""; position: absolute; left: -1.25rem; top: .45rem; width: .5rem; height: .5rem; border-radius: 50%; background: var(--app-primary); }
.app-timeline li strong { display: block; }
.app-timeline li .app-meta { display: block; }

/* ---------- CV builder: questions beside a live preview ---------- */
.app-builder {
	display: grid;
	gap: 2rem;
	grid-template-columns: minmax(0, 1fr);
	align-items: start;
}

@media (min-width: 62em) {
	.app-builder {
		grid-template-columns: minmax(0, 1fr) minmax(20rem, 26rem);
	}
}

.app-builder-main {
	min-width: 0;
}

.app-builder-focused {
	width: min(100%, 900px);
}

.app-step-rail ol {
	display: flex;
	flex-wrap: wrap;
	gap: .5rem;
	margin: 0 0 1.5rem;
	padding: 0;
	list-style: none;
}

.app-step > a,
.app-step > span {
	display: inline-flex;
	align-items: center;
	gap: .5rem;
	padding: .35rem .75rem;
	border: 1px solid var(--app-line);
	border-radius: 999px;
	font-size: .85rem;
	text-decoration: none;
}

.app-step-number {
	display: inline-grid;
	place-items: center;
	width: 1.4rem;
	height: 1.4rem;
	border-radius: 50%;
	background: var(--app-line);
	font-size: .75rem;
}

.app-step.is-current > a,
.app-step.is-current > span {
	border-color: var(--app-primary);
	color: var(--app-primary);
}

.app-step.is-current .app-step-number,
.app-step.is-done .app-step-number {
	background: var(--app-primary);
	color: #fff;
}

.app-form-section + .app-form-section {
	margin-top: 2rem;
	padding-top: 2rem;
	border-top: 1px solid var(--app-line);
}

.app-extras-picker {
	margin: 0 0 2rem;
	padding: 1rem 1.25rem 1.25rem;
	border: 1px solid var(--app-line);
	border-radius: .75rem;
}

.app-extras-options {
	display: grid;
	gap: .5rem 1.25rem;
	grid-template-columns: repeat(auto-fit, minmax(13rem, 1fr));
	margin-top: .75rem;
}

.app-choice {
	display: flex;
	align-items: center;
	gap: .6rem;
	font-size: .95rem;
	cursor: pointer;
}

/* Polished custom checkboxes — step 5 extras picker + "Start on a new page" */
.app-choice input[type="checkbox"],
.app-layout-break input[type="checkbox"] {
	-webkit-appearance: none;
	appearance: none;
	width: 20px;
	height: 20px;
	flex: 0 0 20px;
	margin: 0;
	border: 1.5px solid var(--app-line);
	border-radius: 5px;
	background: var(--app-surface);
	cursor: pointer;
	transition: background .16s ease, border-color .16s ease, box-shadow .16s ease;
}

.app-choice input[type="checkbox"]:hover,
.app-layout-break input[type="checkbox"]:hover {
	border-color: var(--app-primary);
}

.app-choice input[type="checkbox"]:focus-visible,
.app-layout-break input[type="checkbox"]:focus-visible {
	outline: 3px solid color-mix(in srgb, var(--app-primary) 42%, transparent);
	outline-offset: 2px;
}

.app-choice input[type="checkbox"]:checked,
.app-layout-break input[type="checkbox"]:checked {
	background-color: var(--app-primary);
	border-color: var(--app-primary);
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M3.5 8.5 6.5 11.5 12.5 4.5' fill='none' stroke='%23ffffff' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: center;
	background-size: 13px 11px;
}

.app-layout-break input[type="checkbox"] {
	width: 18px;
	height: 18px;
	flex: 0 0 18px;
}

.app-import-flag {
	margin: 0 0 1rem;
	font-size: .85rem;
	color: var(--app-primary);
}

.app-skip {
	align-self: center;
	font-size: .9rem;
	color: var(--app-muted);
}

.app-builder-preview {
	position: sticky;
	top: 1.5rem;
	display: grid;
	gap: .75rem;
	padding: 1rem;
	border: 1px solid var(--app-line);
	border-radius: .75rem;
	background: #fff;
}

.app-builder-preview h2 {
	margin: 0;
	font-size: 1rem;
}

.app-builder-preview-head {
	display: flex;
	flex-wrap: wrap;
	align-items: end;
	justify-content: space-between;
	gap: .75rem;
}

.app-look-switcher {
	display: flex;
	align-items: end;
	gap: .5rem;
}

.app-look-switcher .form-row {
	margin: 0;
}

.app-builder-paper {
	overflow: hidden;
	border: 1px solid var(--app-line);
	border-radius: .5rem;
}

.app-look-strip {
	display: grid;
	gap: .75rem;
	grid-template-columns: repeat(auto-fit, minmax(13rem, 1fr));
	margin: 1rem 0;
	padding: 0;
	list-style: none;
}

.app-look-chip {
	display: grid;
	gap: .2rem;
	padding: .75rem 1rem;
	border: 1px solid var(--app-line);
	border-radius: .6rem;
	text-decoration: none;
}

.app-look-chip.is-current {
	border-color: var(--app-primary);
}

.app-look-chip-name {
	font-weight: 600;
}

.app-start-grid {
	display: grid;
	gap: 1.25rem;
	grid-template-columns: repeat(auto-fit, minmax(18rem, 1fr));
	margin-bottom: 2.5rem;
}

.app-start-card.is-primary {
	border-color: var(--app-primary);
}

.app-import-status {
	margin: 0 0 0.75rem;
	color: var(--app-muted);
	font-size: 0.9rem;
}

.app-import-status:empty {
	display: none;
}

.app-start-card textarea {
	width: 100%;
}

.app-preview-toggle {
	position: fixed;
	right: 1rem;
	bottom: 1rem;
	z-index: 5;
}

@media (min-width: 62em) {
	.app-preview-toggle {
		display: none;
	}
}

@media (max-width: 61.99em) {
	.app-builder-preview {
		position: fixed;
		left: 0;
		right: 0;
		bottom: 0;
		z-index: 4;
		max-height: 80vh;
		overflow: auto;
		border-radius: .75rem .75rem 0 0;
		transform: translateY(102%);
		transition: transform .2s ease;
	}

	.app-builder.is-preview-open .app-builder-preview {
		transform: translateY(0);
	}
}

.app-layout-form .app-layout-list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	gap: .5rem;
}

.app-layout-form .app-layout-row {
	background: var(--app-surface);
	border: 1px solid var(--app-line);
	border-radius: .5rem;
	padding: .65rem .8rem;
	align-items: center;
}

.app-layout-form .app-layout-row.is-dragging {
	opacity: .5;
}

.app-layout-form .app-layout-row.is-drop-target {
	border-color: var(--app-primary);
	box-shadow: inset 0 0 0 1px var(--app-primary);
}

.app-layout-handle {
	cursor: grab;
	color: var(--app-muted);
	letter-spacing: -.15em;
	padding-right: .35rem;
	user-select: none;
}

.app-layout-move {
	display: inline-flex;
	gap: .25rem;
}

.button-tiny {
	padding: .15rem .45rem;
	line-height: 1.2;
	font-size: .85rem;
}
.app-stack-form{display:flex;flex-direction:column;gap:.5rem;align-items:flex-start;max-width:640px;margin:0 0 1rem}.app-stack-form label{font-size:.88rem;font-weight:650}.app-stack-form textarea{width:100%;padding:.65rem .8rem;border:1px solid var(--app-line);border-radius:var(--app-radius);background:var(--app-surface);color:var(--app-text);font:inherit;resize:vertical}
.app-studio-head{max-width:900px;margin:0 0 1.25rem}.app-studio-head h1{margin:.2rem 0 .5rem;color:var(--app-ink);font:600 clamp(1.6rem,2.6vw,2.2rem)/1.18 var(--app-display)}.app-studio-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:1.25rem;align-items:start}.app-studio-rail{padding:1rem;border:1px solid var(--app-line);border-radius:var(--app-radius);background:var(--app-surface)}.app-studio-rail .app-nav-title{margin:0 0 .5rem;color:var(--app-muted)}.app-studio-rail ul{display:flex;flex-direction:column;gap:.15rem;padding:0;margin:0;list-style:none}.app-studio-rail a{display:grid;grid-template-columns:18px minmax(0,1fr) auto;gap:.55rem;align-items:center;min-height:40px;padding:.45rem .55rem;border-radius:var(--app-radius);color:var(--app-text);font-size:.88rem;font-weight:600;text-decoration:none}.app-studio-rail a:hover,.app-studio-rail a:focus-visible{background:var(--app-soft)}.app-studio-rail-item.is-current a{background:var(--app-ink);color:var(--app-sidebar-text)}.app-studio-tick{color:var(--app-muted);font-size:.85rem;text-align:center}.app-studio-rail-item.is-filled .app-studio-tick{color:var(--app-primary)}.app-studio-rail-item.is-current .app-studio-tick{color:#76d0ad}.app-studio-count{color:inherit;font-size:.72rem;opacity:.7}.app-studio-arrange,.app-studio-panel{margin-top:1rem;padding:.85rem;border:1px solid var(--app-line);border-radius:var(--app-radius);background:var(--app-surface)}.app-studio-arrange>summary,.app-studio-panel>summary{cursor:pointer;color:var(--app-ink);font-size:.88rem;font-weight:650}.app-studio-fields{min-width:0;padding:clamp(1.25rem,2.5vw,2rem);border:1px solid var(--app-line);border-radius:var(--app-radius);background:var(--app-surface)}.app-studio-fields>h2{margin:0 0 1rem;color:var(--app-ink);font:600 1.3rem/1.3 var(--app-display)}.app-studio-fields .app-form{max-width:none}.app-studio-tools{display:flex;flex-direction:column;gap:.75rem;padding-top:1rem;margin-top:1.25rem;border-top:1px solid var(--app-line)}.app-studio-panels{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem;margin-top:1.5rem}.app-studio-panels .app-studio-panel{margin-top:0}@media (min-width:62em){.app-studio-grid{grid-template-columns:220px minmax(0,760px);max-width:1000px}.app-studio-rail{position:sticky;top:calc(var(--app-topbar-height) + 1rem)}}
.app-studio-preview{position:fixed;z-index:95;top:var(--app-topbar-height);right:0;bottom:0;width:min(700px,calc(100vw - var(--app-sidebar-width)));max-height:none;padding:1.25rem;border-radius:0;overflow:auto;transform:translateX(102%);visibility:hidden;pointer-events:none;transition:transform .22s ease,visibility .22s ease;box-shadow:-18px 0 50px color-mix(in srgb,var(--app-ink) 18%,transparent)}.app-studio.is-preview-open .app-studio-preview{transform:none;visibility:visible;pointer-events:auto}.app-studio .app-preview-toggle{display:inline-flex;z-index:97}.app-preview-close{margin-left:auto}.app-preview-backdrop{position:fixed;inset:var(--app-topbar-height) 0 0 var(--app-sidebar-width);z-index:90;display:block;width:auto;height:auto;padding:0;border:0;background:color-mix(in srgb,var(--app-ink) 35%,transparent);opacity:0;visibility:hidden;transition:opacity .2s ease,visibility .2s ease}.app-studio.is-preview-open .app-preview-backdrop{opacity:1;visibility:visible}.app-studio-preview .app-builder-paper{max-width:470px;margin-inline:auto}.app-studio-preview .app-builder-preview-head{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center}.app-studio-preview .app-look-switcher{grid-column:1/-1}.app-studio-preview>.field-hint{text-align:center}
@media(max-width:960px){.app-studio-preview{top:var(--app-topbar-height);width:min(700px,100vw)}.app-preview-backdrop{left:0}}
@media(max-width:640px){.app-studio-rail ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.25rem}.app-studio-rail a{min-height:44px}.app-studio-preview{top:auto;left:0;width:100%;max-height:88vh;border-radius:var(--app-radius) var(--app-radius) 0 0;transform:translateY(102%)}.app-studio.is-preview-open .app-studio-preview{transform:none}.app-studio-preview .app-builder-preview-head{position:sticky;top:-1.25rem;z-index:2;padding:.75rem 0;background:var(--app-surface)}.app-preview-backdrop{inset:0}.app-studio-fields{padding:1.1rem}.app-studio-panels{grid-template-columns:1fr}}
.app-cv-thumb{display:block;overflow:hidden;height:190px;margin:0 0 1rem;border:1px solid var(--app-line);border-radius:var(--app-radius);background:var(--app-surface)}.app-cv-thumb-inner{display:block;width:820px;transform:scale(.34);transform-origin:top left;pointer-events:none}.app-cv-thumb-inner .cv-paper{box-shadow:none}.app-cv-card a.app-cv-thumb-link{display:block;text-decoration:none}.app-letter-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:1.25rem;align-items:start}@media (min-width:62em){.app-letter-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.app-letter-grid .app-preview-pane{position:sticky;top:calc(var(--app-topbar-height) + 1rem)}}
.app-topbar-state{font-size:.78rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:22ch}
.promotion-list{margin-top:1.25rem;padding-top:1rem;border-top:1px solid var(--app-line)}.promotion-list-head{display:flex;justify-content:space-between;gap:1rem;margin-bottom:.75rem}.promotion-list-head strong,.promotion-list-head span{display:block}.promotion-list-head span{color:var(--app-muted);font-size:.8rem}.promotion-row{margin:0 0 .85rem;padding:1rem;border-left:3px solid var(--app-primary);background:var(--app-soft)}.promotion-list.is-enhanced .promotion-row.is-empty{display:none}.promotion-row-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.75rem}.promotion-row-head strong{color:var(--app-ink);font-size:.86rem}.promotion-row .form-row:last-child{margin-bottom:0}
.app-plan-allowance{margin:.1rem 0 .7rem;color:var(--app-primary);font-size:.82rem;font-weight:700}

.repeatable-actions-top{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem;margin:0 0 1rem}
.repeatable-actions-hint{color:var(--muted);font-size:.82rem}
.app-studio-bar{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.75rem 1rem;align-items:center;max-width:1000px;padding:.85rem 1rem;margin:0 0 1rem;border:1px solid var(--app-line);border-radius:var(--app-radius);background:var(--app-surface)}.app-studio-bar-meta{min-width:0}.app-studio-bar-title{margin:0;color:var(--app-ink);font:600 1.05rem/1.3 var(--app-display);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-studio-bar-meta .app-meta{display:flex;gap:.5rem;align-items:center;margin:.2rem 0 0}.app-studio-bar-actions{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;justify-content:flex-end}.app-studio-bar-form{margin:0}.app-studio-bar-hint{grid-column:1/-1;margin:0;color:var(--app-muted);font-size:.8rem}.app-icon-button{display:inline-flex;gap:.4rem;align-items:center}.app-icon{width:16px;height:16px;flex:0 0 auto}@media(max-width:640px){.app-studio-bar{grid-template-columns:minmax(0,1fr)}.app-studio-bar-actions{justify-content:flex-start}.app-studio-bar-actions .button{flex:1 1 auto;justify-content:center}}
.app-studio-bar-links{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:.35rem .75rem;align-items:center;padding-top:.6rem;border-top:1px solid var(--app-line)}
.app-studio-bar-links a{display:inline-flex;gap:.35rem;align-items:center;padding:.25rem .1rem;color:var(--app-muted);font-size:.85rem;text-decoration:none}
.app-studio-bar-links a:hover,.app-studio-bar-links a:focus-visible{color:var(--app-accent,var(--app-ink));text-decoration:underline}
.app-studio-bar-links .app-badge{font-size:.7rem}
.app-gallery-panel{display:grid;gap:.75rem}
.app-gallery-facts{margin:0;padding-left:1.1rem;color:var(--app-muted);font-size:.9rem;display:grid;gap:.25rem}
.app-studio-bar-toggle{display:flex;flex-wrap:wrap;gap:.5rem 1rem;align-items:center;grid-column:1/-1;padding-top:.75rem;border-top:1px solid var(--app-line)}
.app-switch{display:inline-flex;gap:.6rem;align-items:center;padding:0;background:none;border:0;color:inherit;font:inherit;font-weight:600;cursor:pointer}
.app-switch-track{position:relative;flex:0 0 auto;width:40px;height:22px;border:1px solid var(--app-line);border-radius:999px;background:var(--soft,#F6F7F4);transition:background .15s ease,border-color .15s ease}
.app-switch-knob{position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(23,53,44,.25);transition:transform .15s ease}
.app-switch.is-on .app-switch-track{background:var(--app-accent,#16815D);border-color:transparent}
.app-switch.is-on .app-switch-knob{transform:translateX(18px)}
.app-switch:focus-visible{outline:2px solid var(--app-accent,#16815D);outline-offset:3px;border-radius:6px}
