:root{--background: oklch(.968 .01 265);--foreground: oklch(.2 .045 275);--card: oklch(.982 .006 265);--card-foreground: oklch(.2 .045 275);--popover: oklch(.982 .006 265);--popover-foreground: oklch(.2 .045 275);--primary: oklch(.606 .219 293);--primary-foreground: oklch(.99 0 0);--secondary: oklch(.93 .025 262);--secondary-foreground: oklch(.3 .06 275);--muted: oklch(.945 .015 265);--muted-foreground: oklch(.5 .05 275);--accent: oklch(.925 .03 260);--accent-foreground: oklch(.28 .08 280);--destructive: oklch(.628 .258 29.23);--destructive-foreground: oklch(.98 0 0);--border: oklch(.89 .025 262);--input: oklch(.89 .025 262);--ring: oklch(.606 .219 293);--font-sans: "Public Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--font-heading: "Sora", "Public Sans", system-ui, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, monospace;--radius: .875rem}.dark{--background: oklch(.12 .045 275);--foreground: oklch(.95 .02 275);--card: oklch(.17 .06 275);--card-foreground: oklch(.95 .02 275);--popover: oklch(.17 .06 275);--popover-foreground: oklch(.95 .02 275);--primary: oklch(.68 .19 293);--primary-foreground: oklch(.12 .045 275);--secondary: oklch(.24 .06 275);--secondary-foreground: oklch(.93 .02 275);--muted: oklch(.21 .05 275);--muted-foreground: oklch(.72 .04 275);--accent: oklch(.28 .07 270);--accent-foreground: oklch(.95 .02 270);--destructive: oklch(.628 .258 29.23);--destructive-foreground: oklch(.98 0 0);--border: oklch(.29 .075 273);--input: oklch(.29 .075 273);--ring: oklch(.68 .19 293)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--background);color:var(--foreground);font-family:var(--font-sans);-webkit-font-smoothing:antialiased}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit}a{color:inherit;text-decoration:none}:focus-visible{outline:3px solid var(--ring);outline-offset:3px}::selection{background:var(--primary);color:#fff}#root{min-height:100%}.page-shell{min-height:100vh;background:var(--background)}.card-layout{min-height:100vh}.brand-header{background:linear-gradient(132deg,#8b5cf6,#706af7,#3b82f6 72%,#7db4ff);color:#fff;border-radius:0 0 52px;min-height:366px}.header-inner{max-width:1050px;margin:auto;padding:36px 24px 68px}.logo-wrap img{width:174px;height:auto;display:block}.identity{margin-top:65px}.identity-label{font-size:10px;font-weight:600;letter-spacing:.22em;opacity:.8;margin:0 0 17px}h1{font-family:var(--font-heading);font-size:clamp(29px,6vw,52px);line-height:1.15;font-weight:600;letter-spacing:-.035em;margin:0 0 19px}h1 strong{font-weight:600}.role{margin:0 0 5px;font-size:15px;font-weight:500;line-height:1.5}.role-english{margin:0;font-size:13px;font-style:italic;opacity:.78}.organization{margin:22px 0 0;font-size:12px;letter-spacing:.05em;font-weight:600}.content-wrap{max-width:1050px;margin:-29px auto 0;padding:0 16px 28px;position:relative}.actions-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 16px 45px #343b8c13;padding:22px 20px 5px}.section-topline{display:flex;justify-content:space-between;align-items:baseline;gap:15px}h2{font-family:var(--font-heading);font-size:18px;font-weight:600;letter-spacing:-.03em;margin:0}.section-topline>span{color:var(--muted-foreground);font-size:10px;letter-spacing:.15em;font-weight:600;white-space:nowrap}.action-list{margin-top:16px}.action-row{display:flex;align-items:center;min-height:74px;gap:13px;border-top:1px solid var(--border);padding:11px 0;transition:background .18s,padding .18s}.action-row:hover{background:var(--muted);padding-left:9px;padding-right:9px}.action-icon{width:44px;height:44px;border-radius:50%;flex:0 0 44px;display:grid;place-items:center;background:var(--accent);color:var(--accent-foreground)}.action-copy{min-width:0;display:flex;flex-direction:column;gap:5px}.action-label{font-weight:600;font-size:14px}.action-detail{font-size:12px;color:var(--muted-foreground);overflow-wrap:anywhere;line-height:1.35;font-variant-numeric:tabular-nums}.action-arrow{flex:0 0 auto;margin-left:auto;color:var(--muted-foreground);transition:transform .18s}.action-row:hover .action-arrow{transform:translate(2px,-2px)}.action-row[href*="linkedin.com"]:hover .action-icon{background:var(--primary);color:var(--primary-foreground)}.action-row:focus-visible,.save-button:focus-visible,.copy-button:focus-visible{outline:3px solid var(--ring);outline-offset:3px}.save-contact{margin-top:18px}.save-button{width:100%;border:0;border-radius:var(--radius);min-height:58px;display:flex;align-items:center;gap:12px;padding:0 20px;cursor:pointer;color:#fff;background:linear-gradient(115deg,#8b5cf6,#3b82f6 82%,#7db4ff);font-weight:600;font-size:14px;box-shadow:0 12px 24px #6a64ea30;transition:transform .18s,box-shadow .18s}.save-button:hover{transform:translateY(-2px);box-shadow:0 16px 28px #6a64ea4d}.save-button svg:last-child{margin-left:auto}.vcard-fallback{display:inline-block;margin-top:13px;padding:5px 0;font-size:12px;text-decoration:underline;text-underline-offset:3px;color:var(--muted-foreground);transition:color .18s}.vcard-fallback:hover{color:var(--primary)}.vcard-fallback:focus-visible{outline:3px solid var(--ring);outline-offset:3px}.share-section{padding:48px 4px 30px}.share-section .section-topline{padding:0 4px 17px;border-bottom:1px solid var(--border)}.share-content{padding:25px 4px 0;display:flex;align-items:center;gap:24px}.qr-box{width:198px;height:198px;flex:0 0 198px;border:1px solid var(--border);border-radius:12px;display:grid;place-items:center;background:#fff}.qr-box svg{display:block}.share-copy{max-width:270px}.share-copy p{font-size:14px;line-height:1.55;margin:0 0 10px}.share-url{font-size:12px;color:var(--muted-foreground);display:block;margin-bottom:18px}.copy-button{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 13px;background:var(--card);border:1px solid var(--border);border-radius:8px;color:var(--foreground);cursor:pointer;font-size:12px;font-weight:600;transition:border-color .18s,background .18s}.copy-button:hover{background:var(--accent);border-color:var(--primary)}footer{border-top:1px solid var(--border);padding:20px 4px 3px;color:var(--muted-foreground);font-size:11px}footer span{padding:0 4px}@media(min-width:800px){.page-shell{padding:40px;background:radial-gradient(circle at 15% 12%,var(--accent),transparent 42%),var(--background)}.card-layout{max-width:1080px;min-height:0;margin:auto;border-radius:24px;overflow:hidden;background:var(--background);box-shadow:0 30px 90px #343b8c1c}.brand-header{min-height:0;border-radius:0 0 80px}.header-inner{padding:42px 56px 90px}.identity{margin-top:72px}.content-wrap{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(280px,1fr);column-gap:48px;padding:0 56px 34px}.actions-card{grid-column:1;grid-row:1 / 3}.save-contact{grid-column:2;grid-row:1;align-self:start;margin-top:40px}.share-section{grid-column:2;grid-row:2;padding-top:16px}.share-content{flex-direction:column;align-items:flex-start}footer{grid-column:1 / -1;margin-top:32px}}@media(max-width:440px){.share-content{flex-direction:column;align-items:flex-start;gap:18px}.share-copy{max-width:none}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}
