.qr-page{max-width:1200px;padding-top:64px;padding-bottom:80px}.qr-intro{max-width:780px;margin-bottom:40px}.qr-intro h1{letter-spacing:-.055em;color:var(--ink);margin:0 0 24px;font-size:clamp(3.2rem,6vw,5.5rem);line-height:1.02}.qr-intro h1 span{color:var(--blue)}.qr-intro>p:last-child{max-width:600px;font-size:1.25rem;line-height:1.5}.qr-workspace{grid-template-columns:1fr 1fr;align-items:start;gap:40px;display:grid}.qr-form{padding:28px 0}.qr-workspace h2{color:var(--ink);margin:0 0 28px;font-size:1.7rem;line-height:1.15}.qr-form label{margin-bottom:10px;font-size:1.1rem;display:block}.qr-form input{width:100%;min-width:0;font:inherit;color:var(--ink);background:#fffdf7;border:2px solid #adaeab;border-radius:14px;padding:17px 16px}.qr-form input:focus-visible{outline:3px solid var(--blue);outline-offset:3px}.qr-form input[aria-invalid=true]{border-color:#a72920}.qr-form #qr-hint,.qr-form #qr-name-hint,.qr-local{margin:14px 0 24px;font-size:.95rem;line-height:1.5}.qr-create{background:var(--coral);color:var(--ink);font:inherit;cursor:pointer;border:0;justify-content:space-between;width:100%;font-weight:600}.qr-create:disabled{opacity:.6;cursor:wait}.qr-form .qr-local{margin-top:18px}.qr-error{color:#a72920;line-height:1.5}.qr-preview{background:var(--pale-blue);text-align:center;border-radius:28px;min-width:0;padding:28px}.qr-preview-title{text-align:left;justify-content:space-between;align-items:center;gap:16px;display:flex}.qr-preview-title h2{margin:0}.qr-preview-title>span{color:var(--blue);font-size:2.4rem}.qr-code{border-radius:8px;width:min(100%,300px);height:auto;margin:20px auto 16px;display:block}.qr-destination{overflow-wrap:anywhere;margin:0 0 20px;font-size:.95rem;line-height:1.5}.qr-download-note{max-width:300px;margin:16px auto 0;font-size:.9rem;line-height:1.5}.qr-empty{min-height:280px;color:var(--blue);flex-direction:column;justify-content:center;align-items:center;display:flex}.qr-empty>span{font-size:4.5rem;line-height:1}.qr-empty p{font-size:1.6rem;line-height:1.2}.qr-guide{max-width:730px;margin-top:56px}.qr-guide h2{color:var(--ink);letter-spacing:-.025em;font-size:1.9rem}.qr-guide p{font-size:1.05rem;line-height:1.65}@media (max-width:760px){.qr-page{padding-top:36px;padding-bottom:48px}.qr-workspace{grid-template-columns:1fr;gap:16px}.qr-form{padding:8px 0}.qr-intro{margin-bottom:24px}.qr-intro h1{font-size:clamp(2.7rem,9vw,3.8rem)}.qr-preview{padding:24px}.qr-guide{margin-top:36px}}.qr-required{font-size:.9rem;font-weight:400}
