:root{font-family:system-ui,-apple-system,sans-serif;color:#1a1a1a;background:#f7f7f5}body{margin:0}main{max-width:640px;margin:0 auto;padding:2rem 1.25rem 4rem}h1{margin-bottom:.25rem}.tagline{color:#6b6b6b;margin-top:0}.error{background:#fde8e8;color:#9b1c1c;padding:.75rem 1rem;border-radius:8px}.customers{list-style:none;padding:0}.customers li{padding:0;background:#fff;border:1px solid #ececec;border-radius:8px;margin-bottom:.5rem}.customers li a{display:block;padding:.6rem .8rem;color:inherit;text-decoration:none}.customers li a:hover{background:#f0f5f2}.back{display:inline-block;margin-bottom:1rem;color:#2f6f4f;text-decoration:none}.back:hover{text-decoration:underline}.edit-form{display:flex;flex-direction:column;gap:.75rem;max-width:22rem}.edit-form label{display:flex;flex-direction:column;gap:.25rem;font-size:.9em;color:#4a4a4a}.edit-form input{padding:.5rem .6rem;border:1px solid #d4d4d4;border-radius:6px;font:inherit}.edit-form button{align-self:flex-start;padding:.5rem 1.1rem;border:none;border-radius:6px;background:#2f6f4f;color:#fff;font:inherit;cursor:pointer}.edit-form button:disabled{opacity:.6;cursor:default}.edit-form select{padding:.5rem .6rem;border:1px solid #d4d4d4;border-radius:6px;font:inherit;background:#fff}.plans{list-style:none;padding:0}.plans li{display:flex;flex-direction:column;gap:.3rem;padding:.6rem .8rem;background:#fff;border:1px solid #ececec;border-radius:8px;margin-bottom:.5rem}.plan-head{display:flex;align-items:center;gap:.5rem}.plan-desc{color:#6b6b6b;font-size:.9em}.plan-actions{display:flex;gap:.5rem;margin-top:.35rem}.plan-actions button{font:inherit;font-size:.82em;padding:.25rem .7rem;border-radius:999px;border:1px solid #d4d4d4;background:#fff;color:#333;cursor:pointer}.plan-actions button:hover{background:#f5f5f3}.plan-actions button.danger{color:#9b1c1c;border-color:#e3b9b9}.plan-actions button.danger:hover{background:#fcf0f0}.billing{margin-top:2rem;padding-top:1.25rem;border-top:1px solid #ececec}.bill-list{list-style:none;padding:0;margin:0 0 .75rem}.bill-list li{padding:.3rem 0;font-size:.95em}.bill-actions{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.bill-actions select{padding:.45rem .6rem;border:1px solid #d4d4d4;border-radius:6px;font:inherit;background:#fff}.bill-actions .auth-btn{padding:.45rem 1rem}.billing a{color:#2f6f4f;word-break:break-all}.portal-card{background:#fff;border:1px solid #ececec;border-radius:10px;padding:1rem 1.25rem;margin-bottom:1rem}.portal-card h2{margin:0 0 .5rem;font-size:1.05rem}.portal-card .plans li{display:flex;flex-direction:column;gap:.5rem;align-items:flex-start}.plan-top{display:flex;justify-content:space-between;align-items:baseline;gap:.6rem;width:100%}.plan-top .price{color:#2f6f4f;font-weight:700}.appbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;border-bottom:1px solid #ececec;background:#fff;padding-right:1.25rem;flex-wrap:wrap}.appbar-right{display:flex;align-items:center;gap:.9rem;font-size:.9em}.who{color:#4a4a4a}.who-email{color:#888}.signout{padding:.35rem .8rem;border:1px solid #d4d4d4;border-radius:6px;background:#fff;color:#4a4a4a;font:inherit;font-size:.95em;cursor:pointer}.signout:hover{background:#f4f4f2}.auth-wrap{display:flex;justify-content:center;padding-top:3rem}.auth-card{width:100%;max-width:22rem;background:#fff;border:1px solid #ececec;border-radius:12px;padding:1.5rem 1.5rem 1.75rem;box-shadow:0 6px 24px #0000000d}.auth-card h1{margin:0 0 .25rem;font-size:1.4rem}.auth-card h2{margin:0 0 1rem;font-size:1.05rem;color:#4a4a4a}.auth-form{display:flex;flex-direction:column;gap:.75rem}.auth-label{display:flex;flex-direction:column;gap:.25rem;font-size:.9em;color:#4a4a4a}.auth-label input{padding:.5rem .6rem;border:1px solid #d4d4d4;border-radius:6px;font:inherit}.auth-btn{padding:.55rem 1.1rem;border:none;border-radius:6px;background:#2f6f4f;color:#fff;font:inherit;cursor:pointer}.auth-btn:hover{background:#275c41}.auth-btn-secondary{background:#fff;color:#2f6f4f;border:1px solid #2f6f4f}.auth-btn-secondary:hover{background:#f0f5f2}.linklike{border:none;background:none;color:#2f6f4f;font:inherit;font-size:.9em;cursor:pointer;padding:0}.linklike:hover{text-decoration:underline}.auth-footer{margin:1rem 0 0;font-size:.9em}.auth-footer a{color:#2f6f4f}.notice{color:#555;font-size:.9em}.topnav{display:flex;gap:1.25rem;padding:1rem 1.25rem}.topnav a{color:#6b6b6b;text-decoration:none;font-weight:600;padding-bottom:.25rem;border-bottom:2px solid transparent}.topnav a.active{color:#2f6f4f;border-bottom-color:#2f6f4f}.badge{display:inline-block;padding:.1rem .5rem;border-radius:999px;font-size:.78em;font-weight:600;white-space:nowrap}.badge-ok{background:#e3f3ea;color:#1f6b45}.badge-off{background:#fdf0dd;color:#8a5a12}.badge-none{background:#f0f0ee;color:#777}.role-chip{display:inline-block;margin-left:.4rem;padding:.05rem .45rem;border-radius:999px;font-size:.72em;font-weight:600;background:#f0f0ee;color:#777}.members{list-style:none;padding:0;display:flex;flex-direction:column;gap:.5rem}.members li{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap;padding:.6rem .8rem;border:1px solid #ececec;border-radius:10px}.member-meta{display:flex;align-items:center;gap:.8rem}.zip-chip{display:inline-block;padding:.05rem .45rem;margin-left:.4rem;border-radius:6px;background:#eef1f0;color:#4a4a4a;font-size:.8em;font-variant-numeric:tabular-nums}.cust-head{display:block}.cust-meta{display:flex;align-items:center;gap:.6rem;margin-top:.35rem}.zones{list-style:none;padding:0}.zones li{background:#fff;border:1px solid #ececec;border-radius:8px;margin-bottom:.5rem}.zones li a{display:block;padding:.6rem .8rem;color:inherit;text-decoration:none}.zones li a:hover{background:#f0f5f2}.zone-head{display:flex;align-items:center;gap:.5rem}.zips{display:block;margin-top:.35rem;color:#777}.zips .zip-chip:first-child{margin-left:0}.add-form .grow{flex:1 1 16rem}.add-form .zip-input{width:6rem}.edit-form .checkbox{flex-direction:row;align-items:center;gap:.5rem}.edit-form .checkbox input{width:auto}.service-status{margin:-.25rem 0 0}.form-actions{display:flex;gap:.75rem}.edit-form button.danger{background:#fff;color:#9b1c1c;border:1px solid #e7b3b3}.edit-form button.danger:hover{background:#fdf0f0}.map-wrap{height:480px;border:1px solid #ececec;border-radius:8px;overflow:hidden}.addr-ac{position:relative}.addr-ac input{width:100%;box-sizing:border-box}.add-form .addr-ac{flex:1 1 16rem}.addr-suggestions{position:absolute;z-index:10;top:100%;left:0;right:0;margin:2px 0 0;padding:0;list-style:none;background:#fff;border:1px solid #d4d4d4;border-radius:6px;box-shadow:0 4px 14px #00000014;max-height:220px;overflow-y:auto}.addr-suggestions li{padding:.5rem .6rem;cursor:pointer;font-size:.9em}.addr-suggestions li:hover{background:#f0f5f2}.mini-map{height:280px;border:1px solid #ececec;border-radius:8px;overflow:hidden;margin-bottom:1.25rem}.map-toggle{display:flex;gap:.4rem;margin-bottom:.5rem}.map-toggle button{padding:.25rem .7rem;font:inherit;font-size:.85em;border:1px solid #d4d4d4;border-radius:6px;background:#fff;color:#4a4a4a;cursor:pointer}.map-toggle button.active{background:#2f6f4f;color:#fff;border-color:#2f6f4f}.dogs{color:#6b6b6b;font-size:.9em}.add-form{display:flex;flex-wrap:wrap;gap:.5rem}.add-form input{padding:.5rem .6rem;border:1px solid #d4d4d4;border-radius:6px;font:inherit}.add-form input[type=number]{width:5rem}.add-form button{padding:.5rem 1.1rem;border:none;border-radius:6px;background:#2f6f4f;color:#fff;font:inherit;cursor:pointer}.add-form button:hover{background:#275c41}
