
*{box-sizing:border-box}body{margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;background:#0f1222;color:#f7f8ff}
a{color:#a7b6ff;text-decoration:none}
.topbar{display:flex;justify-content:space-between;align-items:center;padding:12px 18px;background:#1b2040;position:sticky;top:0}
.brand a{font-weight:700;color:#fff}
nav a{margin-left:12px}
.container{max-width:1100px;margin:24px auto;padding:0 16px}
.hero{padding:48px 0;text-align:center}
.btn{background:#6c7bff;color:#fff;border:0;padding:10px 16px;border-radius:12px;cursor:pointer}
.btn.ghost{background:transparent;border:1px solid #6c7bff}
.btn.small{padding:6px 10px;border-radius:10px}
.btn.warn{background:#ff5d5d;color:#fff}
.card{background:#171a33;border:1px solid #2a2f5e;border-radius:16px;padding:16px;margin-bottom:16px;box-shadow:0 6px 20px rgba(0,0,0,.25)}
.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px}
.grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
label{display:block;margin:8px 0}input,textarea,select{width:100%;padding:10px;border-radius:10px;border:1px solid #2a2f5e;background:#0f1126;color:#fff}
.table{width:100%;border-collapse:collapse}.table th,.table td{border-bottom:1px solid #2a2f5e;padding:8px;text-align:left}
.alert{padding:10px 14px;border-radius:10px;margin-bottom:12px}.alert.ok{background:#143d2a;color:#b6ffda}.alert.err{background:#3d1414;color:#ffb6b6}
.thumb{max-width:100%;border-radius:10px;border:1px solid #2a2f5e}
.chore.pending{border-left:4px solid #ffd166}.chore.submitted{border-left:4px solid #7bdff2}.chore.approved{border-left:4px solid #4caf50}
.inline{display:inline}
h1,h2,h3,h4{color:#fff}
p,h1,h2,h3,h4,li,td,th,small{line-height:1.4}
.hint{opacity:.7}
