:root{--bg:#f6f7f9;--surface:#fff;--surface-2:#fafbfc;--border:#e2e5ea;--text:#1a1d23;--muted:#626875;--accent:#4f46e5;--danger:#dc2626;--danger-bg:#fdecec;--ok-bg:#e9f7ef;--radius:10px;--shadow:0 1px 3px #14182114, 0 1px 2px #1418210a;--aurora-1:#6366f1;--aurora-2:#a855f7;--aurora-3:#ec4899;--aurora-gradient:linear-gradient(90deg, var(--aurora-1), var(--aurora-2) 55%, var(--aurora-3));--aurora-ink:#17123a;--aurora-muted:#5b5580;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html,body,#root{height:100%}body{background:var(--bg);color:var(--text);margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;line-height:1.5}a{color:var(--accent)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@font-face{font-family:Vitably Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/inter-400-CyCys3Eg.woff)format("woff")}@font-face{font-family:Vitably Roboto;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/roboto-400-D27F5sTu.woff)format("woff")}@font-face{font-family:Vitably Open Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/open-sans-400-DKniycaP.woff)format("woff")}@font-face{font-family:Vitably Lato;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/lato-400-B11PyLys.woff)format("woff")}@font-face{font-family:Vitably Montserrat;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/montserrat-400-xItZbAXg.woff)format("woff")}@font-face{font-family:Vitably Poppins;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/poppins-400-BOb3E3N0.woff)format("woff")}@font-face{font-family:Vitably Work Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/work-sans-400-DE1_0GuN.woff)format("woff")}@font-face{font-family:"Vitably Source Sans 3";font-style:normal;font-weight:400;font-display:swap;src:url(/assets/source-sans-3-400-AFMiCETP.woff)format("woff")}@font-face{font-family:Vitably Nunito Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/nunito-sans-400-DY9yCUyQ.woff)format("woff")}@font-face{font-family:Vitably Raleway;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/raleway-400-sMcq1OIP.woff)format("woff")}@font-face{font-family:Vitably Merriweather;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/merriweather-400-CvqO63Ah.woff)format("woff")}@font-face{font-family:Vitably Lora;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/lora-400-DBJS-Hc6.woff)format("woff")}@font-face{font-family:Vitably Playfair Display;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/playfair-display-400-DHYHbkg3.woff)format("woff")}@font-face{font-family:Vitably PT Serif;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/pt-serif-400-DIu_lRW0.woff)format("woff")}@font-face{font-family:"Vitably Source Serif 4";font-style:normal;font-weight:400;font-display:swap;src:url(/assets/source-serif-4-400-Dn3IlU-Z.woff)format("woff")}@font-face{font-family:Vitably Crimson Pro;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/crimson-pro-400-BzhyrSeK.woff)format("woff")}@font-face{font-family:Vitably EB Garamond;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/eb-garamond-400-maQnHeKB.woff)format("woff")}@font-face{font-family:Vitably Libre Baskerville;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/libre-baskerville-400-BTm3cn9P.woff)format("woff")}@font-face{font-family:Vitably JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/jetbrains-mono-400-6-qcROiO.woff)format("woff")}@font-face{font-family:Vitably IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/ibm-plex-mono-400-CvHOgSBP.woff)format("woff")}.font-picker{flex-direction:column;gap:10px;display:flex}.font-picker__group{flex-direction:column;gap:6px;display:flex}.font-picker__cat{text-transform:uppercase;letter-spacing:.5px;color:var(--muted);font-size:11px;font-weight:600}.font-picker__chips{flex-wrap:wrap;gap:8px;display:flex}.font-chip{border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer;border-radius:8px;padding:6px 12px;font-size:14px;line-height:1.2}.font-chip:hover{border-color:var(--accent)}.font-chip--active{border-color:var(--accent);color:var(--accent);background:#eef0ff;font-weight:600}.font-chip:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.btn{border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;gap:6px;padding:8px 14px;font-size:14px;font-weight:500;text-decoration:none;transition:background .15s,border-color .15s;display:inline-flex}.btn:hover{background:var(--surface-2);border-color:#cfd4dc}.btn--primary{color:#fff;background:var(--aurora-gradient);border:none;box-shadow:0 6px 18px #9646d242}.btn--primary:hover{transform:translateY(-1px);box-shadow:0 10px 26px #9646d261}.btn--gradient{color:#fff;background:var(--aurora-gradient);border:none;box-shadow:0 8px 22px #9646d252}.btn--gradient:hover{transform:translateY(-2px);box-shadow:0 12px 30px #9646d26b}.btn--glass{color:var(--aurora-ink);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffb3;border:1px solid #785adc33}.btn--glass:hover{background:#ffffffeb;border-color:#785adc59}.btn--onGradient{color:#6d28d9;background:#fff;border:none;box-shadow:0 10px 30px #00000029}.btn--onGradient:hover{transform:translateY(-2px);box-shadow:0 14px 36px #00000038}.btn--danger{color:var(--danger);border-color:#f0c4c4}.btn--danger:hover{background:var(--danger-bg)}.btn--sm{padding:5px 10px;font-size:13px}.btn:disabled{opacity:.5;cursor:not-allowed}.icon-btn{border:1px solid var(--border);background:var(--surface);cursor:pointer;border-radius:7px;width:30px;height:30px;font-size:14px;line-height:1}.icon-btn:hover:not(:disabled){background:var(--surface-2)}.icon-btn:disabled{opacity:.35;cursor:not-allowed}.icon-btn--danger{color:var(--danger)}.page{z-index:1;max-width:1180px;margin:0 auto;padding:28px 24px 64px;position:relative}.app-bg{z-index:0;pointer-events:none;background:radial-gradient(40% 34% at 8% 4%, #6366f12e, transparent 70%), radial-gradient(36% 30% at 94% 6%, #ec489921, transparent 70%), radial-gradient(48% 44% at 82% 96%, #a855f724, transparent 70%), var(--bg);position:fixed;inset:0}.dashboard .page__title{background:var(--aurora-gradient);color:#0000;-webkit-background-clip:text;background-clip:text;width:fit-content}.page__header{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:24px;display:flex}.page__title{margin:0;font-size:28px}.page__subtitle{color:var(--muted);margin:4px 0 0;font-size:14px}.page__actions{flex-wrap:wrap;gap:10px;display:flex}.banner{border-radius:8px;margin:0 0 16px;padding:10px 14px;font-size:14px}.banner--ok{background:var(--ok-bg);color:#1a7a45}.banner--error{background:var(--danger-bg);color:#a12020}.empty{text-align:center;color:var(--muted);padding:56px 20px}.empty h2{color:var(--text);margin:0 0 6px}.empty .btn{margin-top:16px}.cv-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:18px;display:grid}.cv-card{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffb8;border:1px solid #fff9;border-radius:16px;flex-direction:column;transition:transform .15s,box-shadow .15s;display:flex;overflow:hidden;box-shadow:0 6px 20px #5a3cbe14}.cv-card:hover{transform:translateY(-3px);box-shadow:0 16px 34px #5a3cbe29}.cv-card__swatch{background-image:linear-gradient(135deg,#ffffff3d,#00000029);align-items:flex-end;height:92px;padding:10px 14px;display:flex}.cv-card__template{color:#fff;background:#00000038;border-radius:5px;padding:3px 8px;font-size:12px;font-weight:600}.cv-card__body{flex-direction:column;flex:1;gap:8px;padding:14px;display:flex}.cv-card__name{margin:0;font-size:17px}.cv-card__name-input{border:1px solid var(--accent);border-radius:6px;width:100%;padding:4px 6px;font-size:17px;font-weight:600}.cv-card__meta{color:var(--muted);margin:0;font-size:13px}.cv-card__actions{flex-wrap:wrap;gap:6px;margin-top:auto;display:flex}.editor{grid-template-columns:minmax(360px,1fr) minmax(380px,1fr);gap:0;max-width:none;height:100vh;padding:0;display:grid}.editor__pane{height:100vh;overflow-y:auto}.editor__pane--form{border-right:1px solid var(--border);background:linear-gradient(#fff,#f7f5ff);padding:20px 22px 60px}.editor__pane--preview{background:radial-gradient(60% 50% at 18% 0,#6366f147,#0000 70%),radial-gradient(52% 46% at 92% 100%,#a855f73d,#0000 70%),#211a3d;padding:20px}.editor__toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:18px;display:flex}.export-buttons{flex-wrap:wrap;gap:8px;display:flex}.editor__settings{flex-direction:column;gap:14px;margin:18px 0;display:flex}.editor__sections{flex-direction:column;gap:14px;display:flex}.field{flex-direction:column;gap:4px;display:flex}.field__label{color:var(--muted);font-size:12px;font-weight:600}.field__input{border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:7px;width:100%;padding:8px 10px;font-family:inherit;font-size:14px}.field__textarea{resize:vertical}.field-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.heading-lang__buttons{flex-wrap:wrap;gap:6px;display:flex}.lang-picker{align-items:center;display:inline-flex}.lang-picker__select{appearance:none;color:var(--text);cursor:pointer;background-color:#ffffff9e;background-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%235b5580'%20stroke-width='1.6'%3E%3Ccircle%20cx='12'%20cy='12'%20r='9'/%3E%3Cpath%20d='M3%2012h18'/%3E%3Cellipse%20cx='12'%20cy='12'%20rx='4'%20ry='9'/%3E%3C/svg%3E"),url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%235b5580'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Cpath%20d='M6%209l6%206%206-6'/%3E%3C/svg%3E");background-position:11px,right 11px center;background-repeat:no-repeat,no-repeat;background-size:15px 15px,12px 12px;border:1px solid #785adc2e;border-radius:999px;padding:8px 32px 8px 33px;font-family:inherit;font-size:13px;font-weight:500;transition:background-color .15s,border-color .15s,box-shadow .15s}.lang-picker__select:hover{background-color:#ffffffe6;border-color:#785adc57}.lang-picker__select:focus-visible{border-color:var(--accent);outline:none;box-shadow:0 0 0 3px #4f46e52e}.field-group{border:1px solid var(--border);border-radius:9px;margin:0;padding:12px 14px}.field-group legend{color:var(--muted);padding:0 6px;font-size:12px;font-weight:600}.template-list{flex-wrap:wrap;gap:8px;display:flex}.template-chip{border:1px solid var(--border);background:var(--surface);cursor:pointer;border-radius:20px;padding:6px 12px;font-size:13px}.template-chip--active{border-color:var(--accent);color:var(--accent);background:#eef0ff;font-weight:600}.swatches{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.swatch{cursor:pointer;border:2px solid #0000;border-radius:50%;width:26px;height:26px;padding:0}.swatch--active{border-color:var(--text);box-shadow:inset 0 0 0 2px #fff}.swatch-input{border:1px solid var(--border);cursor:pointer;background:0 0;border-radius:6px;width:30px;height:30px;padding:0}.photo-row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.photo-thumb{object-fit:cover;border-radius:50%;width:52px;height:52px}.photo-actions{gap:8px;display:flex}.checkbox{align-items:center;gap:8px;margin-top:10px;font-size:14px;display:flex}.photo-size{margin-top:10px}.photo-size input[type=range]{width:100%}.section-card{border:1px solid var(--border);background:var(--surface-2);border-radius:9px;padding:14px}.section-card__head{align-items:center;gap:10px;margin-bottom:12px;display:flex}.section-title-input{border:1px solid var(--border);border-radius:7px;flex:1;padding:6px 8px;font-size:15px;font-weight:600}.section-card__controls{gap:6px;display:flex}.section-card__break{color:var(--text-muted,#555);cursor:pointer;align-items:center;gap:7px;margin-bottom:12px;font-size:13px;display:flex}.section-card__break input{cursor:pointer}.item-list{flex-direction:column;gap:12px;display:flex}.item-card{border:1px solid var(--border);background:var(--surface);border-radius:8px;flex-direction:column;gap:10px;padding:12px;display:flex}.item-card__head{justify-content:space-between;align-items:center;display:flex}.item-card__num{color:var(--muted);font-size:12px;font-weight:700}.skill-row{align-items:center;gap:8px;display:flex}.add-section{flex-wrap:wrap;align-items:center;gap:8px;margin-top:20px;display:flex}.add-section__label{color:var(--muted);font-size:13px;font-weight:600}.preview{justify-content:center;align-items:stretch;height:100%;min-height:480px;display:flex;position:relative}.preview-frame{background:#fff;border:none;border-radius:6px;width:100%;height:100%;box-shadow:0 6px 24px #00000047}.preview-status{color:#fff;align-self:center}.preview-status--error{color:#ffd5d5}.preview-badge{color:#fff;background:#0000008c;border-radius:5px;padding:3px 8px;font-size:12px;position:absolute;top:10px;right:10px}.modal-backdrop{z-index:50;background:#14182180;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal{background:var(--surface);border-radius:12px;width:100%;max-width:480px;max-height:90vh;padding:24px;overflow-y:auto;box-shadow:0 12px 40px #00000040}.modal__title{margin:0 0 8px;font-size:20px}.modal__intro{color:var(--muted);margin:0 0 14px;font-size:14px}.modal__help{border:1px solid var(--border);border-radius:8px;margin-bottom:16px;padding:10px 14px}.modal__help summary{cursor:pointer;font-size:14px;font-weight:600}.modal__steps{color:#444;margin:10px 0 2px;padding-left:20px;font-size:13px}.modal__steps li{margin-bottom:5px}.modal__actions{flex-wrap:wrap;gap:10px;margin-top:8px;display:flex}@media (width<=860px){.editor{grid-template-columns:1fr;height:auto}.editor__pane{height:auto;overflow:visible}.editor__pane--form{border-right:none;border-bottom:1px solid var(--border)}.editor__pane--preview{height:90vh}.field-grid{grid-template-columns:1fr}}.btn--lg{border-radius:10px;padding:12px 24px;font-size:16px}.landing{min-height:100%;color:var(--aurora-ink);flex-direction:column;display:flex;position:relative;overflow-x:hidden}.landing__aurora{z-index:0;background:radial-gradient(48% 42% at 12% 6%,#6366f16b,#0000 70%),radial-gradient(44% 38% at 90% 10%,#ec48995c,#0000 70%),radial-gradient(58% 52% at 76% 92%,#a855f757,#0000 70%),#f6f3ff;position:fixed;inset:0}.landing>header,.landing>main,.landing>footer{z-index:1;position:relative}.landing__nav{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#ffffffb8;border:1px solid #fff9;border-radius:999px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;width:calc(100% - 32px);max-width:1120px;margin:16px auto 0;padding:14px 22px;display:flex;box-shadow:0 10px 34px #5a3cbe24}.landing__brand{letter-spacing:-.02em;font-size:21px;font-weight:800}.landing__brand-accent{background:var(--aurora-gradient);color:#0000;-webkit-background-clip:text;background-clip:text}.landing__nav-actions{align-items:center;gap:10px;display:flex}.landing__hero{grid-template-columns:1.05fr .95fr;align-items:center;gap:48px;width:100%;max-width:1120px;margin:0 auto;padding:64px 24px 44px;display:grid}.landing__eyebrow{color:#7c3aed;background:#a855f71f;border-radius:999px;align-items:center;gap:8px;padding:7px 14px;font-size:13px;font-weight:600;display:inline-flex}.landing__hero-title{letter-spacing:-.02em;margin:20px 0 0;font-size:clamp(36px,5.2vw,60px);line-height:1.05}.landing__hero-body{max-width:520px;color:var(--aurora-muted);margin:20px 0 28px;font-size:18px}.landing__hero-cta{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.landing__hero-privacy{color:var(--aurora-muted);align-items:center;gap:8px;margin:18px 0 0;font-size:14px;display:flex}.landing__preview{position:relative}.landing__cvcard{background:#fff;border:1px solid #ffffffb3;border-radius:20px;padding:28px 30px;transform:rotate(1.6deg);box-shadow:0 30px 70px #5032a042}.landing__cvband{background:var(--aurora-gradient);border-radius:6px;height:10px;margin-bottom:18px}.landing__cvname{font-size:22px;font-weight:700}.landing__cvrole{color:#7c3aed;margin-bottom:14px;font-size:14px;font-weight:600}.landing__cvline{background:#edeaf8;border-radius:5px;height:8px;margin:8px 0}.landing__cvline--s{width:55%}.landing__cvline--m{width:78%}.landing__cvhead{background:#cbb8f2;border-radius:5px;width:34%;height:9px;margin:20px 0 12px}.landing__floaty{z-index:2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffc7;border:1px solid #ffffffb3;border-radius:14px;align-items:center;gap:7px;padding:10px 14px;font-size:13px;font-weight:600;display:inline-flex;position:absolute;box-shadow:0 12px 30px #5a3cbe33}.landing__floaty--one{color:#7c3aed;top:-16px;left:-22px}.landing__floaty--two{color:#4f46e5;bottom:-18px;right:-12px}.landing__section-title{text-align:center;letter-spacing:-.02em;margin:0 0 8px;font-size:clamp(26px,3.6vw,38px)}.landing__features{max-width:1120px;margin:0 auto;padding:56px 24px 8px}.landing__feature-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;margin:32px 0 0;padding:0;list-style:none;display:grid}.landing__feature{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffb8;border:1px solid #fff9;border-radius:20px;padding:26px 24px;transition:transform .15s,box-shadow .15s;box-shadow:0 6px 20px #5a3cbe14}.landing__feature:hover{transform:translateY(-4px);box-shadow:0 18px 40px #5a3cbe2e}.landing__feature-icon{color:#7c3aed;background:linear-gradient(135deg,#6366f129,#ec489929);border-radius:13px;place-items:center;width:46px;height:46px;margin-bottom:16px;display:grid}.landing__feature-title{margin:0 0 8px;font-size:18px}.landing__feature-body{color:var(--aurora-muted);margin:0;font-size:15px}.landing__cta{text-align:center;color:#fff;background:var(--aurora-gradient);border-radius:28px;width:calc(100% - 48px);max-width:1120px;margin:30px auto 0;padding:60px 24px;box-shadow:0 30px 60px #8c46d25c}.landing__cta-title{letter-spacing:-.02em;margin:0 0 12px;font-size:clamp(28px,4vw,42px)}.landing__cta-body{opacity:.92;margin:0 0 26px;font-size:18px}.landing__footer{text-align:center;color:var(--aurora-muted);margin-top:auto;padding:32px 24px 40px;font-size:14px}@media (width<=860px){.landing__hero{grid-template-columns:1fr;padding-top:44px}.landing__cvcard{transform:none}}
