:root{color-scheme:dark;--canvas:#0b141b;--panel:#111d25;--ink:#f2f1ec;--muted:#b5bec5;--gold:#e5bf85;--line:#31424d;--serif:Georgia,'Times New Roman',serif;--sans:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}
*{box-sizing:border-box}body{margin:0;min-width:320px;background:var(--canvas);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}button,a{-webkit-tap-highlight-color:transparent}:focus-visible{outline:3px solid var(--gold);outline-offset:5px}svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.icon-definitions{position:absolute;width:0;height:0;overflow:hidden}.page{width:min(100% - 40px,1080px);margin:56px auto;display:grid;grid-template-columns:440px 1fr;gap:56px;align-items:center}.contact-card{min-width:0}.identity{display:grid;grid-template-columns:88px 1fr;column-gap:24px;align-items:center;margin-bottom:28px}.portrait{grid-row:1/4;width:88px;height:104px;object-fit:cover;border-radius:12px;border:1px solid #b4905b}h1{font-family:var(--serif);font-weight:400;font-size:35px;line-height:1.13;letter-spacing:-1px;margin:0 0 9px}h1 span{color:var(--gold)}.profession{font-size:13px;line-height:1.5;letter-spacing:.035em;margin:0 0 8px}.languages{font-size:13px;line-height:1.65;color:var(--muted);margin:0}.button{min-height:52px;padding:14px 20px;display:flex;gap:12px;align-items:center;justify-content:center;border:1px solid transparent;border-radius:10px;cursor:pointer;font-size:16px;font-weight:600;transition:background .16s,color .16s}.button-primary{background:var(--gold);color:#111b23}.button-primary:hover{background:#f0ce9f}.contacts{margin-top:23px;border-top:1px solid var(--line)}.contact-row{display:grid;grid-template-columns:24px 1fr 20px;gap:17px;align-items:center;min-height:76px;padding:14px 0;border-bottom:1px solid var(--line);transition:color .16s}.contact-row:hover{color:var(--gold)}.row-icon{color:var(--gold)}.row-value{display:block;font-size:18px;line-height:1.25;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}.row-arrow{color:#83949f;width:17px;height:17px}.sharing{padding-top:24px}.button-secondary{background:transparent;border-color:#6f644f;color:var(--gold);width:100%}.button-secondary:hover{background:#202a2f}.text-button{display:block;margin:16px auto 0;border:0;background:none;color:var(--muted);font-size:13px;cursor:pointer;padding:10px}.text-button[hidden]{display:none}.share-status{font-size:12px;line-height:1.5;text-align:center;margin:0;color:var(--gold)}.share-status:not(:empty){margin-top:8px}.paper-card{min-width:0;align-self:center}.artwork-link{display:block;border:1px solid #82704e;border-radius:16px;overflow:hidden;box-shadow:0 24px 60px #0005}.artwork-link img{width:100%;height:auto;display:block}.artwork-download{display:flex;gap:8px;align-items:center;justify-content:flex-end;margin-top:20px;color:var(--muted);font-size:13px}.artwork-download svg{width:17px;height:17px}.qr-dialog{position:fixed;width:min(calc(100% - 32px),420px);max-height:calc(100dvh - 40px);padding:34px 28px 24px;background:var(--panel);color:var(--ink);border:1px solid #807051;border-radius:18px;text-align:center;overflow:auto}.qr-dialog::backdrop{background:#03080dcc;backdrop-filter:blur(5px)}.qr-dialog h2{font-family:var(--serif);font-size:27px;font-weight:400;margin:6px 0 10px}.qr-dialog p{font-size:14px;color:var(--muted);margin:0 0 20px}.close-dialog{position:absolute;right:13px;top:8px;width:38px;height:38px;background:transparent;border:0;color:var(--muted);font-size:30px;cursor:pointer}.qr-image{width:100%;height:auto;display:block;border-radius:8px;margin-bottom:20px}.qr-url{display:block;color:var(--muted);font-size:11px;overflow-wrap:anywhere;margin-top:18px}
@media(max-width:900px){.page{max-width:500px;display:block;margin:32px auto 40px}.paper-card{margin-top:40px}.identity{margin-bottom:26px}h1{font-size:34px}}@media(max-width:380px){.page{width:calc(100% - 32px);margin-top:24px}.identity{grid-template-columns:72px 1fr;gap:16px}.portrait{width:72px;height:94px}h1{font-size:29px}.profession,.languages{font-size:12px}.row-value{font-size:17px}.contact-row{gap:13px}}@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
