:root{color-scheme:light;--ink:#253f34;--accent:#e1edc7;--paper:#f8f8f3;--border:#d8dfd5}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.55}a{color:inherit;text-underline-offset:4px}header{display:flex;align-items:center;justify-content:space-between;padding:22px 4%;border-bottom:1px solid var(--border);background:white}.brand{font-size:32px;font-weight:800;text-decoration:none;letter-spacing:-1.5px}.brand span{font-size:12px;display:block;font-weight:400;letter-spacing:0}.layout{display:grid;grid-template-columns:225px 1fr;min-height:80vh}aside{padding:32px 22px;border-right:1px solid var(--border)}nav{display:grid;gap:8px;margin-bottom:32px}nav a{padding:12px 16px;border-radius:10px;text-decoration:none}nav a[aria-current=page]{background:var(--ink);color:white}main{padding:36px;min-width:0;max-width:1600px;width:100%;margin:auto}h1{font-size:clamp(28px,4vw,44px);line-height:1.15;letter-spacing:-1.5px;margin:8px 0 20px}h2{font-size:23px}h3{font-size:17px}.eyebrow{text-transform:uppercase;font-size:11px;letter-spacing:2px;font-weight:700}.intro{max-width:700px;color:#506454;margin-bottom:25px}.card,.preview{background:white;border:1px solid var(--border);border-radius:16px;padding:25px;margin-bottom:20px}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px}.editor-grid{display:grid;grid-template-columns:minmax(260px,1fr) minmax(260px,1fr);gap:24px}.preview{align-self:start;white-space:pre-wrap;overflow-wrap:anywhere;position:sticky;top:20px;border-radius:3px;min-height:500px;border-top:8px solid var(--ink)}.preview h2{font-size:28px}.preview h3{margin-top:25px;border-bottom:1px solid var(--border)}label{display:block;font-size:14px;font-weight:600;margin:13px 0 5px}input,textarea,select{font:inherit;color:inherit;width:100%;padding:11px;border:1px solid #9aaa9c;border-radius:8px;background:white}input[type=checkbox]{width:auto;margin-right:10px}input[type=color]{height:45px;padding:4px}textarea{resize:vertical;min-height:95px}button,.button{font:inherit;font-weight:600;padding:11px 16px;border-radius:9px;border:1px solid var(--ink);background:var(--ink);color:white;cursor:pointer;text-decoration:none;display:inline-block;margin:8px 8px 8px 0;min-height:44px}button.secondary{background:white;color:var(--ink)}button:disabled{cursor:not-allowed;background:#e6e9e2;color:#586355;border-color:#a8b2a4}button.danger{background:white;color:#8c2323;border-color:#8c2323}button:hover:not(:disabled){filter:brightness(.94)}:focus-visible{outline:3px solid #447be2;outline-offset:3px}.muted{color:#526550;font-size:14px}.badge{background:var(--accent);padding:6px 10px;border-radius:99px;font-size:12px;display:inline-block}#message:not(:empty){padding:14px;border:1px solid #a0b99a;background:#eaf0e1;border-radius:8px;margin-bottom:20px;white-space:pre-wrap}#message.error{background:#fff0ed;border-color:#d9a296;color:#762e27}.toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.toolbar>*{width:auto}.template{border:1px solid var(--border);padding:16px;border-radius:10px}.template[aria-disabled=true]{color:#5f695c;background:#f5f5f1}details{margin:24px 0}summary{cursor:pointer;font-weight:600}footer{border-top:1px solid var(--border);padding:24px;display:flex;flex-wrap:wrap;gap:24px}.skip{position:absolute;left:10px;top:-100px;background:white;padding:12px}.skip:focus{top:10px;z-index:2}.public-cv{max-width:850px;margin:40px auto;background:white}.row{padding:18px 0;border-bottom:1px solid var(--border)}.statusline{font-size:13px;min-height:24px}.calendar-date{font-weight:700}.locked{font-size:14px;color:#526550}@media(max-width:950px){.layout{grid-template-columns:180px 1fr}.editor-grid{grid-template-columns:1fr}.preview{position:static}main{padding:24px}}@media(max-width:640px){.layout{display:block}aside{padding:12px;border-right:0;border-bottom:1px solid var(--border)}aside>.eyebrow{display:none}nav{display:flex;overflow-x:auto;gap:4px;margin:0 0 12px}nav a{padding:9px 12px;white-space:nowrap;font-size:14px}aside>details{margin:8px 0}aside>a{font-size:13px}main{padding:24px 16px}header{padding:15px 18px}.brand{font-size:27px}.card{padding:18px}.toolbar button{flex-grow:1}.preview{min-height:350px;padding:20px}.grid{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}