*{box-sizing:border-box}
body{margin:0;background:#f3f4f6;color:#222;font-family:Arial,Helvetica,sans-serif}
.card{max-width:1000px;margin:50px auto;padding:32px;background:#fff;border-radius:12px;box-shadow:0 4px 20px rgba(0,0,0,.08)}
.narrow{max-width:520px}
h1{margin-top:0}h2{margin-top:0}
label{display:block;font-weight:600;margin:16px 0 6px}
input,select{width:100%;padding:10px;border:1px solid #bbb;border-radius:6px;font-size:16px}
button,.button{display:inline-block;margin-top:18px;padding:10px 16px;border:0;border-radius:6px;background:#222;color:#fff;text-decoration:none;font-size:15px;cursor:pointer}
.secondary{background:#666}.small{margin:0;padding:7px 10px;font-size:13px}
.muted{color:#666}
.error,.success,.warning{padding:12px;border-radius:6px;margin:18px 0}
.error{background:#fdeaea;border:1px solid #d66}.success{background:#e8f7e8;border:1px solid #6ab56a}.warning{background:#fff7df;border:1px solid #d8b64c}
.topline{display:flex;justify-content:space-between;align-items:flex-start;gap:20px}.actions{display:flex;gap:8px}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px;margin-top:28px}
.tile{padding:20px;border:1px solid #ddd;border-radius:10px;background:#fafafa}
.admin-section{margin-top:30px;padding-top:24px;border-top:1px solid #ddd}
.admin-form{max-width:520px}.table-wrap{overflow-x:auto}
table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:10px;border-bottom:1px solid #ddd;vertical-align:middle}
.inline-form{display:inline;margin:0}.inline-form select{width:auto;padding:6px;font-size:14px}.inline-form button{display:inline-block}
code{background:#eee;padding:2px 5px;border-radius:4px}
@media(max-width:650px){.card{margin:15px;padding:22px}.topline{display:block}.actions{margin-top:15px}.table-wrap{font-size:14px}}
