.sec{min-height:100dvh;padding:52px 24px 90px}.sec-in{width:min(720px,100%);margin-inline:auto}.sec h1{letter-spacing:-1.4px;margin:8px 0 10px;font-size:clamp(26px,3vw,38px);font-weight:560}.sec h1 em{color:var(--violet);font:italic 400 1em Georgia,serif}.sec .sub{color:var(--muted);margin:0 0 34px;font-size:14px;line-height:1.7}.sec section{border:1px solid var(--line);background:var(--surface);border-radius:16px;margin-bottom:18px;padding:26px}.sec h2{margin:0 0 6px;font-size:14px;font-weight:640}.sec .note{color:var(--muted);margin:0 0 18px;font-size:12.5px;line-height:1.65}.state{border:1px solid var(--line);color:var(--muted);border-radius:20px;align-items:center;gap:8px;margin-bottom:16px;padding:6px 12px;font-size:12px;display:inline-flex}.state.on{color:var(--lime);border-color:var(--lime)}.state.req{color:var(--amber);border-color:var(--amber)}.qr{flex-wrap:wrap;align-items:flex-start;gap:24px;margin-bottom:18px;display:flex}.qr .box{background:#fff;border-radius:12px;padding:12px;line-height:0}.qr .manual{color:var(--muted);max-width:340px;font-size:12px;line-height:1.7}.qr code{color:var(--ink);word-break:break-all;background:var(--surface-2);border:1px solid var(--line);border-radius:8px;margin-top:8px;padding:10px 12px;font-size:12.5px;display:block}.sec input{font:inherit;border:1px solid var(--line);background:var(--surface-2);color:var(--ink);letter-spacing:.18em;border-radius:9px;width:180px;padding:11px 13px;font-size:14px}.sec .btn{font:inherit;cursor:pointer;color:var(--violet);background:#9f76ff2e;border:1px solid #9f76ff73;border-radius:9px;margin-left:8px;padding:11px 18px;font-size:13px;font-weight:640;transition:background .15s,color .15s}.sec .btn:hover:not(:disabled){background:var(--violet);color:#fff}.sec .btn.ghost{color:var(--muted);border-color:var(--line);background:0 0}.sec .btn:disabled{opacity:.5;cursor:default}.codes{grid-template-columns:repeat(2,1fr);gap:8px;margin:16px 0;display:grid}.codes span{letter-spacing:.1em;background:var(--surface-2);border:1px solid var(--line);text-align:center;border-radius:8px;padding:9px 12px;font-size:13px}.warn{color:var(--amber);margin-top:14px;font-size:12.5px;line-height:1.6}.msg{border-radius:9px;margin-bottom:14px;padding:10px 14px;font-size:12.5px}.msg.ok{color:var(--lime);border:1px solid var(--lime)}.msg.bad{color:var(--danger);border:1px solid var(--danger)}@media (max-width:600px){.codes{grid-template-columns:1fr}}
