body{font:15px/1.5 system-ui,sans-serif;max-width:760px;margin:24px auto;padding:0 16px;color:#222}
h1{font-size:20px} h2{font-size:15px;margin:22px 0 6px;color:#555;border-bottom:1px solid #eee;padding-bottom:4px}
label.chip{display:inline-block;background:#f2f4f7;border:1px solid #dde;border-radius:14px;padding:2px 10px;margin:2px;cursor:pointer}
label.chip input{margin-right:5px}
textarea,input[type=number],input[name=home_postal]{font:inherit;padding:6px;box-sizing:border-box}
textarea{width:100%} .num-s{width:64px} .num-m{width:110px}
.row{display:flex;gap:8px;flex-wrap:wrap;align-items:center} .gap{margin-top:6px}
.save{position:sticky;bottom:0;background:#fff;padding:12px 0;border-top:1px solid #eee}
button{font:inherit;background:#1a73e8;color:#fff;border:0;border-radius:8px;padding:10px 22px;cursor:pointer}
small,.hint{color:#888} .hint{font-size:13px}
.pchip{background:#eef3fb;border:1px solid #cdd9ee;border-radius:10px;padding:1px 9px;margin:0 2px;color:#1a56a8;font-size:13px}
.pchip:hover{background:#dbe7f8}
.ok{color:#137333} .err{color:#c5221f}
#results{margin:6px 0 18px} .count{font-weight:600} button:disabled{opacity:.6;cursor:wait}
.topbar{margin:0 0 14px;display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.card{border:1px solid #e3e7ee;border-radius:10px;padding:9px 12px;margin:7px 0;background:#fafbfc}
.card .ttl{font-weight:600} .card .addr{font-size:13.5px;color:#222;margin:3px 0 1px}
.card .meta{color:#888;font-size:12px;margin:1px 0 6px}
.card a{color:#1a73e8;text-decoration:none} .card a:hover{text-decoration:underline}
.card button{float:right;padding:6px 16px;font-size:14px;font-weight:600;border-radius:7px;margin:-2px 0 0 6px}
.card button.hide{background:#c5221f} .card button.hide:hover{background:#a01b17}
.card button.applied{background:#137333} .card button.applied:hover{background:#0d5728}
.card::after{content:"";display:block;clear:both}
.savebtn,.appliedbtn{padding:6px 14px;font-size:14px} .savebtn{background:#5f6368} .appliedbtn{background:#137333}
.xdel{background:none;color:#c5221f;padding:0 4px;font-size:15px} h3{font-size:15px;margin:10px 0}

footer { margin-top: 2em; padding-top: 1em; border-top: 1px solid #ddd; color: #666; font-size: .85em; }
footer p { margin: 6px 0 } footer a { color: #1a56a8 }

/* clickwrap gate (native <dialog>) */
dialog#gate { max-width: 560px; border: 1px solid #dde; border-radius: 12px; padding: 18px 22px; font: inherit; color: #222 }
dialog#gate::backdrop { background: rgba(0, 0, 0, .45) }
dialog#gate h2 { margin-top: 0 } dialog#gate ul { padding-left: 20px } dialog#gate li { margin: 4px 0 }
.gatecheck { display: flex; gap: 8px; align-items: flex-start; margin: 14px 0; font-weight: 600; cursor: pointer }
.gatecheck input { margin-top: 4px }
#gate_continue:disabled { cursor: not-allowed }

/* legal pages */
.legal nav { margin: 0 0 14px } .legal h2 { margin-top: 26px } .legal li { margin: 3px 0 } .legal .meta { color: #888; font-size: 13px }
