:root { --radius: 16px; }
* { box-sizing: border-box; }
body { font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif; margin: 0; color: #0f172a; background: #f8fafc; }
.container { max-width: 1000px; margin: 0 auto; padding: 24px; }
.header { display:flex; gap:16px; align-items:center; }
.logo { width: 60px; height: 60px; border-radius: 50%; object-fit: cover; }
.card { background: white; border-radius: var(--radius); padding: 20px; box-shadow: 0 10px 25px rgba(2,6,23,.08); border: 1px solid #e2e8f0; }
.grid { display:grid; gap:20px; }
.grid-2 { grid-template-columns: 1fr 1fr; }
@media (max-width: 800px){ .grid-2 { grid-template-columns: 1fr; } }
label { display:block; font-weight:600; margin: 10px 0 6px; }
input, select { width:100%; padding:12px 14px; border:1px solid #cbd5e1; border-radius: 12px; font-size:16px; }
button { cursor:pointer; border:0; padding:12px 16px; border-radius: 12px; background:#0ea5e9; color:white; font-weight:700; }
button.secondary { background:#64748b; }
.table { width:100%; border-collapse: collapse; }
.table th, .table td { padding: 10px 8px; border-bottom: 1px solid #e2e8f0; text-align:left; }
.badge { display:inline-block; padding:4px 10px; border-radius:999px; background:#e2e8f0; font-size:12px; }
.notice { font-size: 14px; color: #475569; }
.footer { margin-top: 40px; color:#64748b; font-size: 14px; }
.success { background:#ecfeff; border:1px solid #a5f3fc; padding:10px 12px; border-radius: 12px; }
.error { background:#fff1f2; border:1px solid #fecdd3; padding:10px 12px; border-radius: 12px; }

/* Tabs */
.tabs { display:flex; gap:8px; flex-wrap:wrap; }
.tab { background:#e2e8f0; color:#0f172a; border-radius:12px; padding:8px 12px; cursor:pointer; user-select:none; }
.tab.active { background:#0ea5e9; color:white; }
.tab-content { display:none; }
.tab-content.active { display:block; }

/* Admin rozložení */
.flex { display:flex; gap:16px; flex-wrap:wrap; }
.col { flex:1 1 420px; }

