*{box-sizing:border-box}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:#f5f7fb;color:#071127}button,input,select,textarea{font:inherit}button{cursor:pointer}textarea{min-height:80px;resize:vertical}.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,.92);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,textarea{width:100%;border:1px solid #cbd5e1;border-radius:14px;padding:12px;background:#fff;outline:none}input:focus,select:focus,textarea: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}.primary.green{background:#16a34a}.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{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,.org-admin-list{display:grid;gap:10px}.org-choice,.org-admin-row{width:100%;background:#fff;color:#0f172a;border:1px solid #e2e8f0;border-radius:18px;padding:14px;display:flex;justify-content:space-between;gap:12px;align-items:center;text-align:left}.org-choice div,.org-admin-row div{display:grid;gap:3px}.org-choice span,.org-admin-row span{color:#64748b;font-size:13px}.admin-badge,.role-chip{display:inline-flex;align-items:center;border-radius:999px;padding:8px 12px;font-size:13px;font-weight:900;background:#fef3c7;color:#92400e;border:1px solid #facc15}.choreflow-page{min-height:100vh;background:#eef2f7}.cf-header{background:#fff;border-bottom:1px solid #dbe3f0;padding:18px 24px;display:flex;justify-content:space-between;gap:16px;align-items:center;position:sticky;top:0;z-index:50}.cf-brand{display:flex;gap:12px;align-items:center}.cf-brand h1{margin:0;font-size:28px}.cf-brand p{margin:2px 0 0;color:#64748b}.cf-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.date-card{margin:18px 24px 12px;display:grid;grid-template-columns:auto 1fr auto auto;gap:10px}.day-tabs{display:flex;gap:10px;overflow:auto;padding:0 24px 18px;border-bottom:1px solid #dbe3f0}.day-tabs button{border:0;border-radius:18px;background:#e9eef6;padding:13px 18px;font-weight:950;color:#475569;min-width:132px}.day-tabs button.active{background:#2563eb;color:white}.day-tabs small{display:block;font-size:10px}.summary-card,.stats-row{margin:22px 24px;display:grid;gap:14px}.summary-card{background:#fff;border-radius:28px;padding:22px;box-shadow:0 14px 45px rgba(15,23,42,.08);position:relative}.summary-card h2{margin:0}.summary-card p{margin:4px 0;color:#64748b}.summary-card>strong{position:absolute;right:22px;top:22px;background:#eff6ff;border-radius:50%;width:34px;height:34px;display:grid;place-items:center}.done-banner{border:1px solid #facc15;background:#fffbeb;color:#92400e;border-radius:18px;padding:14px;font-weight:900}.stats-row{grid-template-columns:1fr 1fr 1fr}.sticky-toggle{position:sticky;top:79px;z-index:40;background:rgba(255,255,255,.92);backdrop-filter:blur(10px);margin:0 24px;border-radius:26px;box-shadow:0 12px 40px rgba(15,23,42,.08);display:grid;grid-template-columns:1fr 1fr;padding:8px}.sticky-toggle button{border:0;background:transparent;border-radius:20px;padding:14px;font-weight:950;font-size:18px}.sticky-toggle button.active{background:#0f172a;color:#fff}.schedule-scroll{margin:18px 24px;overflow:auto;border-radius:24px;background:#fff;border:1px solid #dbe3f0}.schedule-grid{display:grid;min-width:820px}.grid-head{position:sticky;top:0;z-index:5;background:#fff;border-bottom:1px solid #dbe3f0;padding:16px;font-weight:950;font-size:20px;display:flex;align-items:center;gap:10px}.time-head{left:0;z-index:6}.member-head{justify-content:center}.avatar{width:38px;height:38px;border-radius:50%;background:#dbeafe;color:#1d4ed8;display:grid;place-items:center;font-weight:950;box-shadow:0 4px 12px rgba(15,23,42,.1)}.time-cell{border-right:1px solid #dbe3f0;border-bottom:1px solid #dbe3f0;padding:16px;font-weight:900;color:#475569;background:#fff}.slot-cell{min-height:160px;border-right:1px solid #dbe3f0;border-bottom:1px solid #dbe3f0;background:#f8fafc;padding:12px;overflow:hidden}.add-slot{width:100%;border:1px dashed #94a3b8;border-radius:18px;padding:12px;background:#fff;color:#475569;font-weight:950;margin-bottom:10px}.chore-card{position:relative;width:100%;max-width:100%;overflow:hidden;border-radius:22px;padding:14px;margin:10px 0;border:1px solid #f87171;background:#fee2e2;color:#7f1d1d;box-shadow:0 12px 28px rgba(15,23,42,.08)}.chore-card.important{border-color:#f97316;background:#ffedd5}.chore-card.urgent{border-color:#dc2626;background:#fecaca}.chore-card.done,.chore-card.completed{border-color:#86efac;background:#dcfce7;color:#166534}.chore-card.collapsed{min-height:74px;padding-right:58px}.mini-title{font-weight:950;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mini-meta{color:#64748b;margin-top:4px}.expand-btn{position:absolute;right:12px;top:12px;border:1px solid #86efac;border-radius:14px;background:#fff;color:#166534;width:38px;height:38px;font-weight:950}.card-head{display:flex;justify-content:space-between;gap:10px}.card-head strong{font-size:18px;word-break:break-word}.chore-card p{color:#64748b;word-break:break-word}.badge-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.badge{border-radius:999px;background:#fff;padding:5px 9px;font-size:12px;font-weight:950;color:#334155}.card-actions{display:flex;gap:8px;margin-top:12px}.small-btn{padding:8px 12px}.list-panel{margin:18px 24px}.modal{position:fixed;inset:0;background:rgba(15,23,42,.45);display:grid;place-items:center;z-index:100;padding:18px}.modal-panel{width:min(560px,100%);max-height:90vh;overflow:auto}.modal-actions{display:flex;gap:10px;justify-content:flex-end}.billing-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}@media(max-width:760px){.cf-header{align-items:flex-start;flex-direction:column;padding:14px}.date-card{margin:12px;grid-template-columns:auto 1fr auto auto}.day-tabs{padding:0 12px 12px}.summary-card,.stats-row,.schedule-scroll,.list-panel{margin:14px 12px}.stats-row{grid-template-columns:1fr}.sticky-toggle{top:0;margin:0 12px}.cf-actions{width:100%}.cf-actions>*{max-width:100%}.slot-cell{padding:10px}.chore-card{border-radius:18px}.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}}
.members-panel{
  width:min(980px,100%);
}
.add-member-card{
  border:1px solid #e2e8f0;
  background:#f8fafc;
  border-radius:18px;
  padding:14px;
}
.add-member-card h3{
  margin:0;
}
.invite-note{
  border:1px solid #93c5fd;
  background:#eff6ff;
  color:#1e3a8a;
  border-radius:14px;
  padding:9px 10px;
  font-size:12px;
  font-weight:900;
}
.check-field{
  display:flex!important;
  flex-direction:row!important;
  align-items:center;
  gap:10px!important;
  padding:12px;
  border:1px solid #cbd5e1;
  border-radius:14px;
  background:#fff;
}
.check-field input{
  width:auto;
}
.member-table-wrap{
  overflow:auto;
  border:1px solid #e2e8f0;
  border-radius:18px;
  margin-top:14px;
}
.member-table{
  width:100%;
  border-collapse:collapse;
  min-width:760px;
  background:#fff;
}
.member-table th,
.member-table td{
  border-bottom:1px solid #e2e8f0;
  padding:12px;
  text-align:left;
  vertical-align:middle;
}
.member-table th{
  background:#f8fafc;
  color:#475569;
  font-size:12px;
  text-transform:uppercase;
  letter-spacing:.04em;
}
.member-table td span{
  display:block;
  color:#64748b;
  font-size:12px;
  margin-top:3px;
}
.center-check{
  display:flex;
  justify-content:center;
}
.center-check input{
  width:auto;
}
.danger{
  color:#991b1b;
  background:#fee2e2;
}

.paywall-card{
  max-width:560px;
}
.pricing-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
  margin:18px 0;
}
.price-card{
  border:1px solid #cbd5e1;
  background:#fff;
  color:#0f172a;
  border-radius:18px;
  padding:18px;
  display:grid;
  gap:6px;
  text-align:left;
}
.price-card strong{
  font-size:22px;
}
.price-card span{
  color:#64748b;
}
.price-card.active{
  border-color:#2563eb;
  box-shadow:0 0 0 4px rgba(37,99,235,.12);
}
@media(max-width:640px){
  .pricing-grid{
    grid-template-columns:1fr;
  }
}

.role-chip{
  white-space: nowrap;
}

.admin-shell .org-admin-row .primary{
  min-width:92px;
}

.pending-row{
  background:#f1f5f9;
  color:#64748b;
}
.pending-chip{
  display:inline-flex;
  border-radius:999px;
  padding:6px 10px;
  background:#e2e8f0;
  color:#475569;
  font-weight:900;
  font-size:12px;
}
.member-head.pending-member,
.pending-member{
  background:#f1f5f9!important;
  color:#64748b!important;
  filter:grayscale(.45);
}
.slot-cell:has(.pending-placeholder){
  background:#f8fafc;
}
.pending-placeholder{
  border:1px dashed #cbd5e1;
  background:#f1f5f9;
  color:#64748b;
  border-radius:16px;
  padding:12px;
  font-size:12px;
  font-weight:900;
  text-align:center;
}
