html,body{margin:0;padding:0}button,input,textarea{font:inherit}:root{--accent: #7b2942;--soft: #f8ecf1;font-family:IBM Plex Sans,Segoe UI,sans-serif;color:#182031;background:linear-gradient(180deg,#f0f4f8,#dce6ee)}*{box-sizing:border-box}body{margin:0;min-height:100vh}#root{min-height:100vh}.app-shell{max-width:1100px;margin:0 auto;padding:1rem 1rem 6rem}.app-header h1{margin-bottom:.25rem}.app-header p{margin-top:0;color:#32435f}.stepper{display:flex;gap:.5rem;overflow-x:auto;padding:.25rem 0 1rem}.step{border:1px solid #bfd0df;background:#fff;border-radius:999px;padding:.5rem .8rem;white-space:nowrap}.step.active{background:var(--accent);color:#fff;border-color:var(--accent)}.card{background:#fffffff2;border-radius:16px;padding:1rem;box-shadow:0 8px 30px #1c355726}.theme-strip{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;margin-bottom:1rem;padding:.7rem;border-radius:12px;background:var(--soft)}.theme-chip{border:1px solid #abc0d0;background:#fff;border-radius:999px;padding:.35rem .55rem}.theme-chip.on{border-color:var(--accent);color:var(--accent)}.dot{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:.35rem}.toggle-icons{display:inline-flex;gap:.35rem;align-items:center;margin-left:auto;font-size:.9rem}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}.field{display:flex;flex-direction:column;gap:.3rem}.field span{font-size:.85rem;color:#34445f}.field input,.field textarea{width:100%;border:1px solid #c4d3e0;border-radius:10px;padding:.62rem;font-size:.95rem;font-family:inherit;background:#fff}.full-width{grid-column:1 / -1}.resume-layout{display:grid;gap:1rem}.resume-section{border:1px solid #d4dfe8;border-radius:12px;padding:.9rem;background:#fafcff}.resume-head{display:flex;justify-content:space-between;align-items:center}.resume-head button,.item-actions button,.bottom-bar button{border:1px solid #abc0d0;background:#fff;border-radius:8px;padding:.4rem .65rem}.resume-item{border-top:1px dashed #d0dbe5;margin-top:.8rem;padding-top:.8rem;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem}.item-actions{grid-column:1 / -1;display:flex;gap:.4rem}.preview-wrap{display:grid;gap:.8rem}.preview-scroll{overflow:hidden;padding-bottom:.2rem;display:flex;justify-content:center}.a4-page{width:210mm;height:297mm;background:#fff;border:2px solid var(--accent);border-radius:10px;padding:14mm;color:#1d2738}.preview-page{transform-origin:top center}.doc-topline{height:4px;background:var(--accent);margin-bottom:.85rem}.doc-header-row{display:flex;justify-content:space-between;align-items:flex-start;gap:.8rem}.doc-header-main{min-width:0;flex:1}.doc-header-side{display:flex;flex-direction:column;align-items:flex-end;gap:.45rem}.bewerbungsfoto{width:34mm;height:44mm;object-fit:cover;border:1px solid #c7cfda;border-radius:2mm}.bewerbungsfoto.klein{width:28mm;height:36mm}.doc-chip{background:var(--accent);color:#fff;padding:.38rem .65rem;border-radius:.25rem;font-size:.78rem;letter-spacing:.02em}.a4-page h2{color:var(--accent);margin:0 0 .5rem;font-size:1.65rem;line-height:1.15}.a4-page h3{color:var(--accent);margin:1rem 0 .35rem;font-size:1.03rem;border-bottom:1px solid #d6dce5;padding-bottom:.18rem}.a4-page p{margin:.27rem 0;font-size:.98rem;line-height:1.52}.address-block{margin:.8rem 0}.preview-section{margin-top:1rem;padding-top:.6rem}.preview-item{margin-bottom:.75rem;padding:.58rem .68rem}.special-item{margin-bottom:0rem;padding:0;font-size:.5rem}.resume-item-head{display:flex;justify-content:space-between;align-items:baseline;gap:.8rem;margin-bottom:.15rem}.resume-role{font-weight:300;color:#17253b}.resume-company{font-weight:600}.resume-period{margin:0;padding:.14rem .42rem;border-radius:999px;font-size:.77rem;font-weight:700;color:var(--accent);white-space:nowrap}.resume-bullets{margin:.22rem 0 0;padding-left:1.05rem}.resume-bullets li{margin:.17rem 0;line-height:1.48;font-size:.9rem}.with-icon{display:flex;align-items:center;gap:.35rem}.preview-subject{padding:1.5rem 0rem;color:var(--accent)}.preview-subject strong{font-size:1.4rem}.closing{padding:3rem 0rem}.hint{font-size:.9rem;color:#455777}.export-stage{position:fixed;left:-10000px;top:0;z-index:-1;pointer-events:none}.export-page{border:none;border-radius:0}.bottom-bar{position:fixed;left:0;right:0;bottom:0;display:grid;grid-template-columns:repeat(4,1fr);gap:.5rem;padding:.7rem;background:#f1f7fcf7;border-top:1px solid #c8d8e5}.bottom-bar .primary{background:var(--accent);color:#fff;border-color:var(--accent)}@media (max-width: 760px){.form-grid,.resume-item{grid-template-columns:1fr}.card{padding:.8rem}.toggle-icons{margin-left:0;width:100%}.a4-page{border-radius:6px}.app-shell{padding:.75rem .6rem 7.4rem}.step{font-size:.85rem;padding:.46rem .7rem}.field input,.field textarea{font-size:16px}.resume-head button,.item-actions button{padding:.52rem .66rem}.bottom-bar{grid-template-columns:1fr 1fr;gap:.45rem;padding:.55rem}.bottom-bar button{min-height:42px;font-size:.92rem}.bewerbungsfoto{width:28mm;height:36mm}}@media (min-width: 980px){.bottom-bar{left:50%;transform:translate(-50%);max-width:1100px;border-radius:12px 12px 0 0}}
