:root{
  --green-1:#006400;
  --green-2:#00aa44;
  --muted-bg:#f6fff6;
  --card:#ffffff;
  --text-dark:#033d03;
  --accent:#009933;
}
*{box-sizing:border-box}
html,body{height:100%;margin:0;font-family:Inter, "Segoe UI", Roboto, Arial, sans-serif;background:var(--muted-bg);color:var(--text-dark)}
.container{max-width:1000px;margin:40px auto;padding:16px}
.card{background:var(--card);border-radius:12px;padding:18px;box-shadow:0 8px 30px rgba(6,25,12,0.04);margin-bottom:18px}
.header{background:linear-gradient(90deg,var(--green-1),var(--green-2));color:white;padding:16px;border-radius:8px}
.center{display:flex;align-items:center;justify-content:center}
.form{max-width:520px;margin:0 auto}
input[type="text"],input[type="email"],input[type="password"],select,textarea,input[type="number"]{width:100%;padding:10px;border-radius:8px;border:1px solid #e6efe6;margin:8px 0}
button{background:var(--accent);color:white;border:none;padding:10px 14px;border-radius:8px;font-weight:700;cursor:pointer}
.button-ghost{background:#fff;color:var(--accent);border:1px solid var(--accent)}
.small{font-size:13px;color:#556b56}
.notice{background:#f0fff4;border-left:4px solid var(--accent);padding:10px;border-radius:8px}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px}
.badge{background:#e8fff0;color:var(--green-1);padding:6px 10px;border-radius:999px;font-weight:700}
.topbar{display:flex;gap:12px;align-items:center;justify-content:space-between;margin-bottom:16px}
.link{color:var(--green-1);text-decoration:underline;cursor:pointer}
.small-muted{color:#6b7b6f;font-size:13px}
.table{width:100%;border-collapse:collapse}
.table th,.table td{padding:8px;border-bottom:1px solid #f2f7f2;text-align:left}
