@import url("https://fonts.googleapis.com/css2?family=Sora:wght@500;600;700&family=Manrope:wght@400;500;600;700&display=swap");:root{--ink:#0b1f17;--forest:#0f3d2e;--leaf:#1a9f63;--mint:#2dd4a0;--cream:#f4faf7;--fog:#e8f2ec;--card:#ffffff;--text:#12261c;--muted:#5a7266;--line:#d5e6dc;--danger:#e04545;--warning:#d97706;--shadow:0 18px 50px rgba(15,61,46,0.12);--radius:20px;--primary:#1a9f63}*{box-sizing:border-box;margin:0;padding:0}body,html{min-height:100%;text-size-adjust:100%}body{font-family:Manrope,system-ui,sans-serif;color:var(--text);background:radial-gradient(ellipse 80% 50% at 0 0,rgba(45,212,160,.18),transparent 55%),radial-gradient(ellipse 70% 45% at 100% 10%,rgba(26,159,99,.12),transparent 50%),linear-gradient(165deg,#f7fcf9,#eef7f2 45%,#e6f3ec);line-height:1.55}a{color:var(--leaf);text-decoration:none}button,input{font-family:inherit}button{cursor:pointer}.page{min-height:100vh;display:flex;flex-direction:column}.topbar{justify-content:space-between;padding:16px 28px;background:rgba(255,255,255,.72);border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);position:-webkit-sticky;position:sticky;top:0;z-index:20}.brand,.topbar{display:flex;align-items:center}.brand{gap:12px}.brand-mark{width:42px;height:42px;border-radius:14px;background:linear-gradient(145deg,var(--mint),var(--leaf));color:white;display:grid;place-items:center;font-size:13px;box-shadow:0 8px 24px rgba(26,159,99,.35)}.brand-mark,.brand-name{font-family:Sora,sans-serif;font-weight:700}.brand-name{font-size:16px;letter-spacing:-.03em;color:var(--ink)}.brand-region{font-size:12px;color:var(--muted);font-weight:500}.container{width:100%;max-width:480px;margin:0 auto;padding:48px 20px 72px;flex:1 1;display:flex;flex-direction:column;justify-content:center}.hero{text-align:center;margin-bottom:28px}.hero-pill{display:inline-flex;align-items:center;gap:8px;padding:6px 12px;border-radius:999px;background:rgba(26,159,99,.1);color:var(--forest);font-size:12px;font-weight:600;margin-bottom:16px}.hero h1{font-family:Sora,sans-serif;font-size:clamp(28px,6vw,36px);font-weight:700;letter-spacing:-.04em;line-height:1.12;color:var(--ink);margin-bottom:12px}.hero p{color:var(--muted);font-size:15px;max-width:340px;margin:0 auto}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:28px;box-shadow:var(--shadow)}.steps-hint{display:grid;grid-gap:10px;gap:10px;margin-bottom:24px;padding:14px;border-radius:14px;background:var(--fog)}.step-hint{display:flex;gap:12px;align-items:center;font-size:13px;color:var(--muted);font-weight:500}.step-num{width:24px;height:24px;border-radius:8px;background:white;border:1px solid var(--line);color:var(--leaf);display:grid;place-items:center;font-size:12px;flex-shrink:0;font-family:Sora,sans-serif}.btn,.step-num{font-weight:700}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:14px 22px;border:none;border-radius:14px;font-size:15px;transition:transform .15s,box-shadow .15s,background .15s}.btn-primary{width:100%;background:linear-gradient(135deg,var(--leaf),#158a55);color:white;box-shadow:0 10px 28px rgba(26,159,99,.35)}.btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 14px 32px rgba(26,159,99,.42)}.btn-primary:disabled{opacity:.55;cursor:not-allowed;transform:none}.btn-ghost{width:100%;background:transparent;color:var(--muted);border:1px solid var(--line);font-weight:600}.btn-ghost:hover{background:var(--fog);color:var(--text)}.form-group{margin-bottom:16px}.form-group label{display:block;margin-bottom:7px;font-size:13px;font-weight:600;color:var(--muted)}.form-group input[type=tel],.form-group input[type=text]{width:100%;padding:13px 15px;background:#fbfefc;border:1.5px solid var(--line);border-radius:12px;color:var(--text);font-size:15px;outline:none;transition:border-color .15s,box-shadow .15s}.form-group input:focus{border-color:var(--leaf);box-shadow:0 0 0 4px rgba(26,159,99,.12)}.error-message{color:var(--danger);font-size:13px;margin-top:10px;font-weight:500}.status-badge{display:inline-flex;align-items:center;gap:7px;padding:6px 12px;border-radius:999px;font-size:13px;font-weight:700}.progress-bar{height:8px;background:var(--fog);border-radius:999px;overflow:hidden;margin:14px 0 6px}.progress-bar-fill{height:100%;background:linear-gradient(90deg,var(--leaf),var(--mint));transition:width .35s ease;border-radius:999px}.spinner{width:18px;height:18px;border:2px solid rgba(255,255,255,.35);border-top-color:white;border-radius:50%;animation:spin .75s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.footer-note{text-align:center;margin-top:22px;font-size:12px;color:var(--muted)}.config-error{text-align:center;padding:36px 20px}.config-error h2{font-family:Sora,sans-serif;margin-bottom:10px;color:var(--ink)}.config-error p,.link-quiet{color:var(--muted)}.link-quiet{background:none;border:none;font-size:13px;font-weight:600;cursor:pointer}.link-quiet:hover{color:var(--leaf)}.section-title{font-family:Sora,sans-serif;font-size:17px;font-weight:700;letter-spacing:-.02em;margin-bottom:6px;color:var(--ink)}.section-desc{color:var(--muted);font-size:14px;margin-bottom:18px}@media (max-width:520px){.topbar{padding:14px 16px}.container{padding:28px 14px 48px}.card{padding:20px 16px}.hero h1{font-size:26px}.pairing-code{font-size:28px;letter-spacing:.12em}.qr-image{max-width:240px}.method-card{padding:14px}}.auth-block{text-align:center;padding-top:4px}.method-grid{display:grid;grid-gap:12px;gap:12px}.method-card{text-align:left;padding:16px;border-radius:16px;border:1.5px solid var(--line);background:#fbfefc;color:var(--text);transition:border-color .15s,background .15s,transform .15s}.method-card:hover:not(:disabled){border-color:rgba(26,159,99,.45);background:#fff}.method-card:disabled{opacity:.6;cursor:not-allowed}.method-card-primary{border-color:rgba(26,159,99,.35);background:rgba(37,211,102,.08)}.method-card-title{font-family:Sora,sans-serif;font-weight:700;font-size:15px;margin-bottom:6px;color:var(--ink)}.method-card-text{line-height:1.45;font-weight:500}.auth-steps,.method-card-text{font-size:13px;color:var(--muted)}.auth-steps{text-align:left;background:rgba(0,0,0,.03);border-radius:14px;padding:14px 16px;margin:0 auto 18px;max-width:440px;line-height:1.5}.auth-steps-title{font-weight:700;color:var(--text);margin-bottom:8px}.auth-steps ol{margin:0;padding-left:18px}.auth-warning{margin:10px 0 0;color:#b45309;font-size:12.5px;font-weight:600}.auth-callout{text-align:left;max-width:440px;margin:0 auto 16px;padding:14px 16px;border-radius:14px;background:rgba(180,83,9,.08);border:1px solid rgba(180,83,9,.28);color:#92400e;font-size:13px;line-height:1.5}.auth-callout-soft{background:rgba(37,211,102,.08);border-color:rgba(37,211,102,.28);color:var(--muted);text-align:center;padding-bottom:12px}.auth-callout-title{font-weight:700;color:#78350f;margin-bottom:6px;font-size:14px}.auth-callout p{margin:0 0 12px}.auth-open-wa{width:100%}.qr-wrap{margin:8px auto;max-width:320px}.qr-image{width:100%;max-width:320px;height:auto;aspect-ratio:1;border-radius:16px;background:#fff;padding:14px;box-shadow:0 8px 24px rgba(0,0,0,.08);pointer-events:none;-moz-user-select:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}.qr-caption{margin:10px 0 0;font-size:12px;font-weight:600;color:var(--muted)}.pairing-wrap{margin:8px auto;max-width:400px}.pairing-code{margin:0 auto;padding:18px 16px;border-radius:16px;background:rgba(37,211,102,.12);border:1px solid rgba(37,211,102,.35);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:clamp(26px,7vw,36px);font-weight:700;letter-spacing:.16em;color:var(--leaf);line-height:1.25;word-break:break-all}.auth-wait{padding:24px 0;color:var(--muted);display:flex;flex-direction:column;align-items:center;gap:10px}.auth-wait .spinner{width:28px;height:28px;border-color:var(--leaf);border-top-color:transparent}@media (pointer:coarse){.btn,.method-card{min-height:48px}.form-group input[type=tel],.form-group input[type=text]{font-size:16px;padding:14px 15px}}