*{box-sizing:border-box}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:#f8fafc;color:#0f172a}button,input,select{font:inherit}button{cursor:pointer}.landing{min-height:100vh;background:radial-gradient(circle at top left,rgba(37,99,235,.22),transparent 34%),radial-gradient(circle at top right,rgba(168,85,247,.18),transparent 30%),linear-gradient(135deg,#f8fafc,#eef2ff);padding:24px;display:flex;align-items:center;justify-content:center}.landing-card{max-width:1080px;width:100%;display:grid;grid-template-columns:1.1fr .9fr;gap:24px}.hero,.auth-card,.panel,.picker-card,.loading-card{background:rgba(255,255,255,.9);border:1px solid rgba(226,232,240,.9);box-shadow:0 25px 70px rgba(15,23,42,.12);border-radius:32px;padding:28px}.brand-row{display:flex;align-items:center;gap:10px;font-weight:950;font-size:20px;color:#fff}.brand-row.dark{color:#0f172a}.brand-mark{width:42px;height:42px;border-radius:16px;display:grid;place-items:center;background:linear-gradient(135deg,#2563eb,#7c3aed);color:white;font-weight:950}.small-mark{width:34px;height:34px;border-radius:12px}.hero h1{margin:28px 0 16px;font-size:clamp(38px,6vw,64px);line-height:.95;letter-spacing:-.04em}.hero p,.auth-card p,.panel p,.picker-card p{color:#64748b;line-height:1.55}.hero-grid{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}.hero-pill{border-radius:999px;background:#eff6ff;border:1px solid #bfdbfe;color:#1d4ed8;padding:9px 12px;font-weight:850;font-size:13px}.auth-head,.panel-title{display:flex;gap:12px;align-items:center;margin-bottom:18px}.auth-head h2,.panel-title h2{margin:0}.form{display:grid;gap:14px}.form label{display:grid;gap:6px;color:#334155;font-weight:850;font-size:14px}input,select{width:100%;border:1px solid #cbd5e1;border-radius:14px;padding:12px 12px;background:#fff;outline:none}input:focus,select:focus{border-color:#2563eb;box-shadow:0 0 0 4px rgba(37,99,235,.12)}.primary,.ghost,.org-choice{border:0;border-radius:14px;padding:12px 14px;font-weight:900;display:inline-flex;justify-content:center;align-items:center;gap:8px}.primary{background:#0f172a;color:white}.ghost{background:#f1f5f9;color:#334155}.auth-links{display:flex;justify-content:space-between;gap:10px;margin-top:12px}.auth-links button{background:transparent;border:0;color:#2563eb;font-weight:800}.message{border:1px solid #bfdbfe;background:#eff6ff;color:#1d4ed8;border-radius:14px;padding:10px;font-weight:800;font-size:13px}.config-error pre{white-space:pre-wrap;word-break:break-word;background:#f1f5f9;border:1px solid #cbd5e1;border-radius:14px;padding:12px}.app-shell{min-height:100vh;padding:22px}.centered{display:grid;place-items:center}.loading-card{display:flex;align-items:center;gap:12px;font-weight:900}.app-top{display:flex;justify-content:space-between;gap:18px;align-items:center;margin-bottom:18px}.top-actions{display:flex;gap:10px;align-items:center}.dashboard-grid{display:grid;grid-template-columns:1fr 420px;gap:16px;margin-bottom:16px}.stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.stat{border:1px solid #e2e8f0;background:#f8fafc;border-radius:18px;padding:14px}.stat strong{display:block;font-size:28px}.stat span{color:#64748b;font-size:13px;font-weight:800}.org-list,.chore-list{display:grid;gap:10px}.org-choice{width:100%;background:#f8fafc;color:#0f172a;border:1px solid #e2e8f0;justify-content:space-between;text-align:left}.org-choice div{display:grid;gap:3px}.org-choice span{color:#64748b;font-size:13px}.chore-row{border:1px solid #e2e8f0;border-radius:18px;padding:14px;display:flex;justify-content:space-between;gap:12px;align-items:center}.chore-row div{display:grid;gap:3px}.chore-row span{color:#64748b;font-size:13px}.status{border-radius:999px;padding:5px 9px;background:#f1f5f9;color:#334155!important;font-weight:900}.empty,.loading{border:1px dashed #cbd5e1;border-radius:18px;padding:20px;color:#64748b;display:flex;align-items:center;gap:10px;font-weight:850}@media(max-width:820px){.landing-card,.dashboard-grid{grid-template-columns:1fr}.app-top{flex-direction:column;align-items:stretch}.top-actions{flex-wrap:wrap}.hero,.auth-card,.panel,.picker-card{border-radius:22px;padding:20px}}
.config-error pre {
  white-space: pre-wrap;
  word-break: break-word;
  background: #f1f5f9;
  border: 1px solid #cbd5e1;
  border-radius: 14px;
  padding: 12px;
}
