:root{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#172e34;background:#f5f7f6;font-synthesis:none}
*{box-sizing:border-box}
[hidden]{display:none!important}
body{margin:0;min-height:100svh}
button,input{font:inherit}
.layout{min-height:100svh;width:100%;max-width:560px;margin:auto;padding:clamp(19px,4vh,35px) 22px 20px;display:flex;flex-direction:column}
.header{display:flex;align-items:center;justify-content:center;margin-bottom:clamp(28px,5.2vh,52px)}
.brand{display:flex;align-items:center;gap:13px;white-space:nowrap}
.brandname{font-size:28px;line-height:1;font-weight:800;letter-spacing:-.075em;color:#102c33}
.dot{color:#24d2ad;letter-spacing:0}
.brand-divider{height:23px;width:1px;background:#bbcdc7}
.brandclient{font-size:10px;font-weight:800;letter-spacing:.17em;color:#658279}
.surface{width:100%;display:flex;flex-direction:column;gap:14px}
.intro{text-align:center;margin:0 auto clamp(13px,3vh,24px)}
h1{font-size:clamp(27px,6.6vw,35px);font-weight:750;letter-spacing:-.047em;line-height:1.14;max-width:440px;margin:0 auto 12px}
.intro p{font-size:14px;line-height:1.55;color:#647c76;max-width:430px;margin:0 auto}
.preview-alert{display:flex;align-items:center;justify-content:center;gap:8px;text-align:center;background:#eaf3ef;color:#46675b;border-radius:11px;padding:10px 12px;font-size:11.5px;line-height:1.4}
.preview-alert b{font-weight:750}
.preview-dot{width:7px;height:7px;background:#47a68e;border-radius:50%;flex:none}
.panel{width:100%;background:#fff;border:1px solid #dde8e3;border-radius:19px;padding:clamp(19px,4.5vw,26px);box-shadow:0 7px 28px #1634280b}
.panel label:not(.check){font-size:13px;font-weight:750;display:block;margin:0 0 11px}
input[type=text]{width:100%;padding:13px 14px;border-radius:11px;border:1px solid #d1dfd9;outline-offset:2px;outline-color:#2ba78d;background:#fbfdfc;font-size:13px}
input[type=text]::placeholder{color:#99aca5}
.actions{display:flex;gap:9px;margin-top:12px}
.button{width:100%;min-height:45px;padding:12px 16px;border:1px solid transparent;border-radius:11px;cursor:pointer;font-size:13px;font-weight:750;display:flex;align-items:center;justify-content:center;gap:8px}
.button:disabled{opacity:.5;cursor:not-allowed}
.button:focus-visible,.check:focus-within{outline:2px solid #24a388;outline-offset:2px}
.primary{background:#102f31;color:#fff}.primary:hover{background:#195046}
.ghost{background:#ecf5f0;color:#255747}
.danger{background:#fff;color:#a23d30;border-color:#e5cac6}
.helper{font-size:11.5px;line-height:1.55;color:#72867e;margin:12px 0 0}
.sectionhead{display:flex;align-items:center;gap:11px;margin-bottom:13px}
.sectionhead h2{font-size:19px;letter-spacing:-.025em;margin:0}
.sectionhead p{font-size:12px;color:#71857c;margin:3px 0 0}
.expiration{font-size:11px;color:#74877f;margin:0 0 14px}
.check{display:flex;align-items:center;gap:10px;padding:11px 12px;margin-bottom:8px;background:#fcfefd;border:1px solid #e2eae6;border-radius:11px;cursor:pointer}
.check input{width:17px;height:17px;accent-color:#208976;flex:none;margin:0}
.check b{font-size:13px;font-weight:650;line-height:1.35;display:block}
.check.consent{background:#f2f8f4;line-height:1.45;font-size:11.5px;color:#3b6256}
.success-mark{display:grid;place-items:center;flex:none;background:#d9f6e9;color:#148763;font-weight:800;width:33px;height:33px;border-radius:50%}
.message{font-size:12px;color:#18745d;line-height:1.5;min-height:18px;text-align:center;margin:0}
.message.error{color:#a73b31}
footer{margin-top:auto;padding-top:28px;display:flex;align-items:center;justify-content:center;gap:5px;font-size:11px;font-weight:750;color:#637b72}
footer>span:last-child{font-weight:450;margin-left:8px}
@media(min-width:700px){.layout{padding-top:38px}.header{margin-bottom:55px}.surface{gap:17px}}
@media(max-width:410px){.layout{padding:20px 17px 16px}.header{margin-bottom:25px}.intro{margin-bottom:10px}h1{font-size:29px}.intro p{font-size:13px}.panel{padding:18px}.surface{gap:11px}footer{padding-top:19px}}
@media(max-height:690px){.layout{padding-top:12px}.header{margin-bottom:14px}.intro{margin-bottom:4px}h1{font-size:25px;margin-bottom:8px}.intro p{font-size:12.5px}.surface{gap:9px}.panel{padding:15px}.preview-alert{padding:8px 10px}.helper{margin-top:9px}footer{padding-top:12px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

/* Nodra Push 0.6 · guía primero, sin código visible para quien llega invitado. */
.onb{display:grid;gap:13px;padding:clamp(19px,4vw,26px)}
.onb[hidden]{display:none!important}
.onb-topline{display:flex;justify-content:space-between;align-items:center;gap:10px}
.onb-pill{padding:6px 10px;border-radius:50px;background:#e5f7ef;color:#157e65;font-weight:800;letter-spacing:.08em;font-size:10px}
.onb-kind{font-size:10px;letter-spacing:.1em;font-weight:750;color:#769289}
.onb h2{font-size:clamp(21px,5.8vw,25px);line-height:1.22;letter-spacing:-.035em;margin:0;color:#123c36}
.onb-copy{font-size:13px;color:#687d73;line-height:1.5;margin:0}
.onb-guide{display:grid;gap:8px;margin:5px 0}
.onb-step{background:#fafdfb;border:1px solid #e3ece7;border-radius:12px;padding:10px;display:flex;align-items:center;gap:12px}
.onb-number{width:29px;height:29px;flex:none;background:#e2f4ed;color:#177e66;border-radius:50%;display:grid;place-items:center;font-size:12px;font-weight:850}
.onb-step-text{flex:1;display:grid;gap:4px;min-width:0}
.onb-step-text strong{font-size:12.5px;color:#24473e;line-height:1.35}
.onb-step-text small{font-size:11.5px;color:#7a8e85;line-height:1.4}
.onb-visual{flex:none;display:grid;place-items:center;width:41px;height:41px;color:#145c51;background:#e6f4ee;border-radius:10px}
.onb-share{border:1px solid #d1e8dc}.onb-add{font-size:29px;line-height:1}
.onb-n{background:#091f2b;color:white;font-size:32px;letter-spacing:-.08em;font-weight:850}
.onb-n span{color:#1fd9b4}
.onb .button{margin-top:0}
.onb-hint{color:#387a67;font-size:11.5px;line-height:1.5;text-align:center;margin:0}
.onb-fallback{display:flex;flex-wrap:wrap;justify-content:center;gap:6px 16px}
.onb-link{appearance:none;background:none;border:0;color:#66817a;text-decoration:underline;text-underline-offset:2px;cursor:pointer;font-size:11.5px;padding:9px 4px;min-height:36px}
.onb-link:focus-visible{outline:2px solid #158d77;outline-offset:2px}
.onb-recovery-title{font-size:20px;margin:0 0 8px;letter-spacing:-.035em}
.onb-recovery-copy{margin:0 0 15px}
@media(max-height:690px){.onb{gap:8px}.onb-guide{gap:6px;margin:0}.onb-step{padding:7px}.onb-visual{width:35px;height:35px}.onb h2{font-size:21px}}
@media(max-width:380px){.onb{padding:16px}.onb-step{gap:8px}.onb-step-text strong{font-size:12px}.onb-step-text small{font-size:10.5px}}

/* Nodra Push 0.6.1 — stable cyan point and tappable Safari help */
.brandname{display:inline-flex;align-items:flex-end;gap:3px;white-space:nowrap}
.brandname>.dot{display:block;flex:none;width:6px;height:6px;margin-bottom:1px;background:#24d2ad;border-radius:50%;color:transparent;font-size:0;letter-spacing:0;line-height:0}
.onb-n{position:relative}
.onb-n span{position:absolute;right:8px;bottom:7px;display:block;width:6px;height:6px;border-radius:50%;background:#1fd9b4;font-size:0;color:transparent;line-height:0}
.onb-help-trigger{appearance:none;border:1px solid #cbe5d9;cursor:pointer;min-height:44px;min-width:44px;transition:transform .12s ease,background-color .12s ease}
.onb-help-trigger:active{transform:scale(.94);background:#d9f4e8}
.onb-help-trigger:focus-visible{outline:3px solid #1fa68c;outline-offset:3px}
.onb-help-dialog{position:fixed;inset:auto 12px max(12px,env(safe-area-inset-bottom));width:min(94vw,440px);max-width:440px;max-height:min(76svh,560px);overflow:auto;margin:auto;padding:0;border:1px solid #dcece5;border-radius:20px;background:#fff;color:#17362f;box-shadow:0 20px 70px #102c3450}
.onb-help-dialog::backdrop{background:#0b2b3299}
.onb-help-content{padding:20px;display:grid;gap:11px}
.onb-help-head{display:flex;align-items:center;justify-content:space-between}
.onb-help-tag{color:#16836a;font-size:10px;font-weight:800;letter-spacing:.1em}
.onb-help-close{appearance:none;background:#f0f5f2;color:#355c4d;border:0;border-radius:50%;width:34px;height:34px;font-size:15px;cursor:pointer}
.onb-help-dialog h2{font-size:24px;letter-spacing:-.04em;line-height:1.2;margin:0}
.onb-help-dialog p{margin:0;line-height:1.55}
#onbHelpLead{color:#70867b;font-size:13px}
.onb-browser-example{background:#edf2f0;border:1px solid #dce5e0;border-radius:14px;padding:12px;display:flex;align-items:center;gap:13px;justify-content:space-between}
.onb-browser-domain{font-size:12px;color:#58746a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.onb-browser-target{display:grid;place-items:center;width:49px;height:42px;flex:none;color:#0f5948;border-radius:12px;border:2px solid #36c4a0;background:#dffaf0;font-weight:800;font-size:20px;letter-spacing:.09em}
.onb-help-main{font-size:14px;font-weight:700;color:#214d41}
.onb-help-alt{font-size:12px;color:#58786d}
.onb-help-note{font-size:10.5px;text-align:center;color:#7b9087}
.onb-help-dialog .button{margin:3px 0 0}
@media(min-width:650px){.onb-help-dialog{inset:0;margin:auto}}
@media(max-height:650px){.onb-help-dialog{max-height:83svh}.onb-help-content{padding:15px;gap:8px}.onb-help-dialog h2{font-size:21px}}
@media(prefers-reduced-motion:reduce){.onb-help-trigger{transition:none}}
