:root{--bg:#f4f6f8;--card:#fff;--text:#172033;--muted:#667085;--border:#d9dee7;--red:#b91c1c;--blue:#1d4ed8}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:Arial,sans-serif}.topbar{position:sticky;top:0;z-index:20;display:flex;justify-content:space-between;align-items:center;background:#111827;color:#fff;padding:14px 20px}.brand,.topbar a{text-decoration:none;color:#fff;font-weight:800}.topbar nav{display:flex;gap:15px}.menu-btn{display:none}.container{max-width:1180px;margin:auto;padding:24px 16px 70px}.page-head,.module-header{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px}.module-grid,.two-col{display:grid;grid-template-columns:1fr 1fr;gap:20px}.module{padding:28px;border-radius:20px;color:#fff;text-decoration:none;min-height:240px}.module.pest,.pest-theme{background:linear-gradient(135deg,#c62020,#7f1d1d)}.module.estate,.estate-theme{background:linear-gradient(135deg,#2563eb,#1e3a8a)}.module-icon{display:grid;place-items:center;width:52px;height:52px;border-radius:14px;background:#fff2;font-weight:900}.module-header{color:#fff;padding:24px;border-radius:18px}.subnav{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:18px}.subnav a,.btn{display:inline-block;padding:10px 14px;border-radius:9px;background:#e7eaf0;color:#172033;text-decoration:none;border:0;font-weight:800}.btn.primary{background:var(--red);color:#fff}.btn.light{background:#fff}.wide{width:100%}.panel,.stat,.reply-card,.login-card{background:#fff;border:1px solid var(--border);border-radius:15px;padding:18px;box-shadow:0 4px 15px #0000000d}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:18px}.stat span,.record-card small,.detail-grid small{display:block;color:var(--muted)}.stat strong{font-size:1.5rem}.filters{display:grid;grid-template-columns:2fr 1fr auto;gap:10px;margin-bottom:18px}.filters.four{grid-template-columns:2fr 1fr 1fr auto}input,select,textarea{width:100%;padding:11px;border:1px solid var(--border);border-radius:9px}textarea{min-height:110px}label{display:block;font-weight:700;margin-bottom:12px}.check{display:flex;gap:8px}.check input{width:auto}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.form-grid .full{grid-column:1/-1}.record-card{display:flex;justify-content:space-between;gap:15px;background:#fff;border:1px solid var(--border);border-radius:13px;padding:14px;margin-bottom:9px;text-decoration:none;color:inherit}.badge{display:inline-block;padding:5px 9px;border-radius:999px;background:#e7eaf0;font-size:.8rem;font-weight:800}.detail-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:13px}.reply-card{padding:16px}.sticky{position:sticky;top:80px}.photo-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px}.photo-grid img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:12px}.login-card{max-width:420px;margin:10vh auto}.logo-mark{margin:auto;display:grid;place-items:center;width:60px;height:60px;border-radius:15px;background:#111827;color:#fff;font-weight:900}.login-card h1,.login-card p{text-align:center}.alert{padding:10px;border-radius:8px}.error{background:#fee2e2;color:#991b1b}.success{background:#dcfce7;color:#166534}.table-wrap{overflow:auto;background:#fff}.table-wrap table{width:100%;border-collapse:collapse}th,td{padding:11px;border-bottom:1px solid #eee}.admin-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.link-card{text-decoration:none;color:inherit}.pre{white-space:pre-wrap}.toast{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);background:#111827;color:#fff;padding:10px 15px;border-radius:99px;display:none}.toast.show{display:block}@media(max-width:800px){.module-grid,.two-col{grid-template-columns:1fr}.stats{grid-template-columns:1fr 1fr}.topbar nav{display:none;position:absolute;top:56px;left:0;right:0;background:#111827;padding:15px;flex-direction:column}.topbar nav.open{display:flex}.menu-btn{display:block}.admin-grid{grid-template-columns:1fr 1fr}.sticky{position:static}}@media(max-width:620px){.container{padding:16px 12px 65px}.page-head,.module-header{align-items:flex-start;flex-direction:column}.filters,.filters.four,.form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:auto}.detail-grid{grid-template-columns:1fr 1fr}}
