#app{height:100dvh;max-width:1000px;margin:0 auto;background:var(--panel);display:flex;flex-direction:column;box-shadow:0 0 30px #0001}
@media(min-width:1000px){body{background:linear-gradient(var(--brand) 0 127px,var(--bg) 127px)}#app{height:calc(100dvh - 38px);margin-top:19px}}
.top{background:var(--brand);color:#fff;padding:8px 6px 8px 12px;display:flex;align-items:center;gap:10px;padding-top:max(8px,env(safe-area-inset-top))}
.top .icon{color:#fff}.top .icon:hover{background:#ffffff22}
.top .sub{font-size:12.5px;opacity:.85}
.logo{width:40px;height:40px;border-radius:50%;background:#fff;display:flex;align-items:center;justify-content:center;flex:none}
.logo img{width:30px;height:30px}
.searchbar{display:flex;gap:6px;padding:8px 10px;background:var(--panel2);align-items:center}
.searchbar input{border-radius:20px;padding:8px 14px}
.composer{padding-bottom:max(8px,env(safe-area-inset-bottom))}
.blocked{padding:14px;text-align:center;background:var(--panel2);color:var(--mute);font-size:13.5px}
/* onboarding */
.onb{overflow:auto;flex:1}
.hero{background:var(--brand);color:#fff;padding:26px 22px 60px;text-align:center}
.hero h1{margin:10px 0 4px;font-size:22px}.hero p{margin:0;opacity:.9}
.form{background:var(--panel);margin:-40px 14px 24px;border-radius:14px;padding:6px 18px 20px;box-shadow:0 4px 20px #0001;max-width:620px}
@media(min-width:660px){.form{margin:-40px auto 24px}}
.seg{display:flex;background:var(--panel2);border-radius:10px;padding:4px;margin:14px 0 4px}
.seg button{flex:1;border:0;background:none;padding:9px;border-radius:8px;cursor:pointer;font-weight:600;color:var(--mute)}
.seg button.on{background:var(--panel);color:var(--brand);box-shadow:var(--shadow)}
.phone{display:flex;gap:8px}.phone select{width:110px;flex:none}
.pin{letter-spacing:6px;font-size:18px}
.step{font-size:11.5px;font-weight:700;color:var(--brand);text-transform:uppercase;letter-spacing:.5px;margin:22px 0 -6px}
.primary{margin-top:10px;padding:10px 12px;border-radius:10px;background:var(--panel2)}
.primary .chips span{padding:6px 12px;font-size:13px}
.install{display:flex;gap:10px;align-items:center;background:var(--brand-l);padding:10px 14px;font-size:13px}
