:root{--ink:#1f2d2a;--sub:#4f5f5a;--line:#d9e2de;--accent:#2f7a63;--warm:#d9822b;--bg:#f4f1ea;--panel:#fff}*{box-sizing:border-box}body{background:var(--bg);color:var(--ink);margin:0;font-family:Zen Maru Gothic,Hiragino Sans,sans-serif;font-size:16px}.top{background:var(--panel);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;display:flex}.top h1{color:var(--accent);margin:0;font-size:20px}.top h1 small{color:var(--sub);margin-left:6px;font-size:14px}.back{color:var(--accent);font-weight:700;text-decoration:none}main{flex-direction:column;gap:14px;max-width:760px;margin:0 auto;padding:16px;display:flex}[hidden]{display:none!important}.box,.card{background:var(--panel);border-radius:16px;flex-direction:column;gap:10px;padding:16px;display:flex;box-shadow:0 1px #0000000d}h2,h3{margin:0;font-size:18px}p{margin:0;line-height:1.6}.row{flex-wrap:wrap;gap:8px;display:flex}input[type=text],input[type=email],input:not([type]){border:2px solid var(--line);border-radius:12px;flex:1;min-width:200px;min-height:46px;padding:0 12px;font-family:inherit;font-size:16px}button{min-height:44px;color:var(--ink);cursor:pointer;background:#eef2f0;border:0;border-radius:12px;padding:0 14px;font-family:inherit;font-size:15px;font-weight:700}button.primary{background:var(--accent);color:#fff}button.danger{color:#9b2c2c;background:#f8dcdc}button.ghost{color:var(--sub);background:0 0}.who{color:var(--sub);justify-content:space-between;align-items:center;display:flex}.msg{color:var(--sub);font-size:14px}.card.off{opacity:.6}.card-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.badge{color:var(--accent);background:#eaf4ef;border-radius:999px;padding:3px 10px;font-size:13px;font-weight:700}.badge.off{color:var(--sub);background:#f3f5f4}.opts{flex-wrap:wrap;gap:8px 16px;display:flex}.opts label{align-items:center;gap:6px;font-weight:700;display:flex}.opts input{width:20px;height:20px}.sw{background:#fff7e6;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;font-weight:700;display:flex}.sw input{width:46px;height:26px}.link{grid-template-columns:1fr auto;gap:6px;display:grid}.link input{font-size:12px}.admin-state{color:var(--sub);font-size:14px}button.ghost-danger{background:0 0;border:2px solid #f0c4c4}
