*{box-sizing:border-box}
body{margin:0;font-family:"Segoe UI",Tahoma,sans-serif;background:#f3f1ec;color:#1f2a2e}
.wrap{max-width:640px;margin:0 auto;padding:16px;display:flex;flex-direction:column;gap:12px}
.hero{background:#0f5e57;color:#fff;border-radius:18px;padding:22px}
.hero h1{margin:0 0 6px;font-size:30px}.hero p{margin:0;opacity:.9}
.top{display:flex;align-items:center;gap:10px}.top h1{margin:0;font-size:22px}
h2{margin:0 0 10px;font-size:17px}
.card{background:#fff;border-radius:14px;padding:14px;box-shadow:0 1px 3px #0001}
.field{display:flex;flex-direction:column;gap:4px;margin-bottom:10px;font-size:14px}
input,.search{font:inherit;padding:11px;border:1px solid #ccd;border-radius:10px;width:100%}
.btn{font:inherit;border:0;background:#0f5e57;color:#fff;padding:10px 16px;border-radius:10px;cursor:pointer}
.btn.ghost{background:#e3ece9;color:#0f5e57}.btn.danger{background:#fde8e6;color:#b42318}
.btn:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #e8a33d;outline-offset:2px}
.tbl{display:flex;align-items:center;gap:10px}
.open{flex:1;text-align:right;background:none;border:0;font:inherit;display:flex;flex-direction:column;gap:3px;cursor:pointer}
.muted{color:#6b7478;font-size:13px;margin:0}
.empty{text-align:center;padding:24px;color:#6b7478;border:2px dashed #d5d2c8;border-radius:14px}
.kv{display:flex;justify-content:space-between;gap:10px;padding:5px 0;border-bottom:1px solid #f0eee8;overflow-wrap:anywhere}
.kv b{color:#0f5e57}
.acts{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}
select{font:inherit;padding:11px;border:1px solid #ccd;border-radius:10px;width:100%;background:#fff}
.tabs{display:flex;flex-wrap:wrap;gap:6px}
.tab{font:inherit;font-size:14px;border:0;background:#e3ece9;color:#0f5e57;padding:8px 12px;border-radius:20px;cursor:pointer}
.tab.on{background:#0f5e57;color:#fff}
.alert{padding:12px;border-radius:12px;background:#fde8e6;color:#b42318}
.alert.ok{background:#e1f4ea;color:#11643a}
.loading{text-align:center;padding:24px;color:#6b7478}
.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px}
.stat{display:flex;flex-direction:column;gap:4px}.stat b{font-size:26px;color:#0f5e57}
.guide p{line-height:1.8}
.btn:disabled{opacity:.6}
