:root{--bg:#f6f2ea;--card:#fff;--text:#1d1d1f;--muted:#6d6d73;--line:#ded9cf;--accent:#151515;--radius:20px}*{box-sizing:border-box}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;background:var(--bg);color:var(--text)}a{color:inherit}input,textarea,select,button{font:inherit}input,textarea,select{width:100%;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:#fff;margin-top:7px}textarea{resize:vertical}label{display:block;font-weight:650;margin:14px 0}button{border:0;border-radius:12px;padding:12px 18px;background:var(--accent);color:#fff;cursor:pointer}.brand{font-weight:800;letter-spacing:.16em;font-size:13px}.auth{min-height:100vh;display:grid;place-items:center;padding:24px}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:24px;box-shadow:0 10px 35px rgba(0,0,0,.05)}.auth .card{width:min(460px,100%)}.muted{color:var(--muted)}.notice{padding:10px 12px;border-radius:10px;background:#eef8ee}.error{background:#fdeeee;color:#8d2424}.topbar{display:flex;justify-content:space-between;align-items:center;padding:18px 5vw;border-bottom:1px solid var(--line);background:#fff}.topbar nav{display:flex;gap:18px}.editor{width:min(1180px,92vw);margin:36px auto;display:grid;grid-template-columns:1fr 340px;gap:28px}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:16px}.checks{display:flex;gap:20px;flex-wrap:wrap}.checks label{font-weight:500}.checks input{width:auto;margin:0 8px 0 0}.stack{align-items:center}.thumbs{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:16px}.thumb img{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:12px}.thumb form{margin-top:6px}.small{padding:7px 10px;font-size:13px}.danger{background:#8e2c2c}.profile{background:#f3eee5}.profile-wrap{width:min(980px,92vw);margin:0 auto;padding:70px 0 40px}.hero{text-align:center;padding-bottom:34px}.eyebrow{font-size:12px;letter-spacing:.22em;font-weight:800;opacity:.55}.hero h1{font-size:clamp(42px,8vw,88px);line-height:.95;margin:18px 0}.headline{font-size:20px;color:var(--muted)}.meta{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.meta span{padding:8px 12px;border:1px solid currentColor;border-radius:999px;font-size:13px}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:30px 0 46px}.gallery figure{margin:0}.gallery .feature{grid-column:span 2;grid-row:span 2}.gallery img{width:100%;height:100%;min-height:220px;object-fit:cover;border-radius:18px}.gallery figcaption{font-size:12px;color:var(--muted);margin-top:5px}.content{background:rgba(255,255,255,.72);border:1px solid rgba(0,0,0,.08);border-radius:22px;padding:28px;margin:16px 0}.content h2{margin-top:0}.content p{line-height:1.85}.twocol{display:grid;grid-template-columns:1fr 1fr;gap:16px}.links{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin:30px 0}.links a{padding:11px 15px;border-radius:999px;background:#111;color:#fff;text-decoration:none}footer{text-align:center;color:var(--muted);font-size:13px;margin-top:40px}.theme-clean{--bg:#f5f7fa}.theme-clean .content{background:white}.theme-dark{--bg:#111;--text:#f5f5f5;--muted:#aaa;--line:#333}.theme-dark .content{background:#191919;border-color:#2c2c2c}.theme-dark .links a{background:#f5f5f5;color:#111}@media(max-width:800px){.editor{grid-template-columns:1fr}.grid2,.twocol{grid-template-columns:1fr}.gallery{grid-template-columns:1fr 1fr}.profile-wrap{padding-top:40px}}@media(max-width:520px){.gallery{grid-template-columns:1fr}.gallery .feature{grid-column:auto;grid-row:auto}.topbar{align-items:flex-start;gap:12px;flex-direction:column}}

/* v2: sharing, QR code and printable US Letter resume */
.profile-actions{position:fixed;z-index:20;top:18px;right:18px;display:flex;gap:8px;flex-wrap:wrap}.profile-actions button{box-shadow:0 8px 25px rgba(0,0,0,.12)}.qr-panel{position:fixed;z-index:30;top:72px;right:18px;width:min(340px,calc(100vw - 36px));background:#fff;color:#111;border:1px solid #ddd;border-radius:18px;padding:20px;box-shadow:0 18px 55px rgba(0,0,0,.2);text-align:center}.qr-panel img{display:block;width:220px;max-width:100%;height:auto;margin:0 auto 12px}.qr-panel strong{display:block;margin-bottom:10px}.qr-panel input{font-size:12px}.qr-close{position:absolute;right:10px;top:8px;background:transparent;color:#333;font-size:24px;padding:2px 8px}.share-tools{display:flex;gap:10px;flex-wrap:wrap;margin:14px 0 20px}.button-link{display:inline-block;text-decoration:none;border-radius:12px;padding:12px 18px;background:#151515;color:#fff}.qr-admin{text-align:center;margin-top:18px}.qr-admin img{width:200px;max-width:100%;height:auto;background:#fff;padding:8px;border-radius:14px}.print-resume{display:none}.resume-header{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;border-bottom:2px solid #111;padding-bottom:18px}.resume-header h1{font-size:30px;line-height:1.1;margin:0 0 6px}.resume-headline{font-size:14px;margin:0 0 8px}.resume-contact{font-size:10pt;color:#444;margin:0}.resume-header>img{width:1.15in;height:1.15in;object-fit:cover;border-radius:50%}.resume-section{margin-top:20px}.resume-section h2{font-size:12pt;text-transform:uppercase;letter-spacing:.08em;border-bottom:1px solid #bbb;padding-bottom:5px;margin:0 0 8px}.resume-section p{font-size:10.5pt;line-height:1.45;margin:0;white-space:normal}.resume-footer{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;margin-top:22px;padding-top:10px;border-top:1px solid #bbb;font-size:8.5pt;color:#555}.resume-footer img{width:.7in;height:.7in}.theme-dark .profile-actions button{background:#fff;color:#111}@media(max-width:600px){.profile-actions{position:static;padding:12px;justify-content:center;background:rgba(255,255,255,.92)}.theme-dark .profile-actions{background:#111}.qr-panel{top:90px}}
@page{size:Letter;margin:.55in}
@media print{html,body{background:#fff!important;color:#111!important}.no-print,.screen-profile,.topbar{display:none!important}.print-resume{display:block!important;width:100%;max-width:none;margin:0;padding:0;background:#fff;color:#111}.print-resume *{color:#111!important;box-shadow:none!important}.resume-section{break-inside:avoid}.resume-footer{break-inside:avoid}a{text-decoration:none;color:#111!important}}
