*{box-sizing:border-box}html,body{margin:0;background:#f3f5fa;font-family:-apple-system,Segoe UI,Roboto,sans-serif;color:#1a2133}
#app{max-width:480px;margin:0 auto;min-height:100vh;padding:0 18px calc(30px + env(safe-area-inset-bottom))}
.top{position:sticky;top:0;z-index:2;background:#2a3247;color:#fff;margin:0 -18px 16px;padding:calc(16px + env(safe-area-inset-top)) 18px 16px;display:flex;align-items:center;gap:10px}
.top b{font-size:19px}.logo{width:34px;height:34px;border-radius:9px;background:#fff;color:#2a3247;font-weight:800;display:flex;align-items:center;justify-content:center}
.back{background:none;border:0;color:#c9d3e8;font-size:17px;padding:4px 6px 4px 0;cursor:pointer}
.ex{background:#fff3cd;color:#7a5b00;font-size:13px;padding:7px 10px;border-radius:9px;margin-bottom:12px;text-align:center}
.big{display:flex;align-items:center;gap:14px;width:100%;border:0;border-radius:20px;padding:21px;margin:0 0 14px;font-size:21px;font-weight:700;color:#fff;cursor:pointer;text-align:left;text-decoration:none;min-height:76px}
.big:active{transform:scale(.98)}.big .i{font-size:32px}.red{background:#dc2626}.blue{background:#2f6fde}.navy{background:#2a3247}.green{background:#16a34a}.teal{background:#0f766e}.grey{background:#9fb0cf;color:#1a2133}.white{background:#fff;color:#1a2133;border:3px dashed #9fb0cf}
.badge{margin-left:auto;background:#fff;color:#dc2626;border-radius:20px;padding:2px 12px;font-size:18px}.ck{margin-left:auto;font-size:26px}
.card{background:#fff;border-radius:16px;padding:16px;margin-bottom:12px;box-shadow:0 1px 3px #0001}
a.card{display:block;color:inherit;text-decoration:none}
.sw{display:flex;align-items:center;justify-content:space-between;cursor:pointer;width:100%;border:0;text-align:left;font:inherit}
.tg{flex:none;width:84px;height:46px;border-radius:30px;background:#c9d3e8;position:relative;transition:.2s}.tg i{position:absolute;top:4px;left:4px;width:38px;height:38px;border-radius:50%;background:#fff;transition:.2s}
.sw.on .tg{background:#16a34a}.sw.on .tg i{left:42px}
.muted{color:#5b6680;font-size:15px}label{font-weight:700;display:block;margin:14px 0 6px;font-size:17px}
textarea,input,select{width:100%;border:1px solid #c9d3e8;border-radius:12px;padding:13px;font-size:17px;font-family:inherit;background:#fff}
.row{display:flex;gap:10px}.row .big{justify-content:center;font-size:18px}
.chips{display:flex;flex-wrap:wrap;gap:8px}.chip{padding:11px 15px;border-radius:22px;background:#fff;border:2px solid #c9d3e8;font-weight:700;font-size:16px;cursor:pointer}.chip.sel{border-color:#2f6fde;color:#2f6fde;background:#eaf1ff}
.banner{background:#16a34a;color:#fff;border-radius:14px;padding:13px;margin-bottom:14px;font-weight:700}
.toast{position:fixed;left:50%;bottom:30px;transform:translateX(-50%);background:#1a2133;color:#fff;padding:13px 18px;border-radius:14px;font-weight:600;z-index:9;max-width:90%}
.tick{display:flex;gap:12px;align-items:flex-start;font-weight:600}.tick input{width:28px;height:28px;flex:none}
.warn{background:#fee2e2;color:#991b1b;border-radius:12px;padding:12px;margin-top:10px;font-weight:600}

.bub{max-width:85%;padding:12px 14px;border-radius:18px;margin:0 0 10px;font-size:17px;line-height:1.35;background:#fff;box-shadow:0 1px 3px #0001;white-space:pre-wrap;word-wrap:break-word}.bub small{display:block;color:#5b6680;font-size:12px;margin-top:5px}.bub.out{margin-left:auto;background:#dbe8ff}
.orange{background:#ea7a12}.row-link{display:block;padding:10px 0;border-top:1px solid #eef1f7;color:inherit;text-decoration:none;font-size:17px}.row-link:first-child{border-top:0}.more{display:block;margin-top:8px;font-weight:700;color:#2f6fde;text-decoration:none}
