:root{--ink:#17252a;--night:#121e23;--dark:#233139;--muted:#6e7879;--lime:#d9fb77;--cream:#f7f8f2;--card:#fff;--border:#e5e9e0}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--cream);font:15px/1.45 system-ui,-apple-system,Segoe UI,sans-serif;margin:0;color:var(--ink)}button,input,select{font:inherit}button{cursor:pointer}a{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #75bda6;outline-offset:2px}.hidden{display:none!important}
.topbar{position:relative;z-index:2;max-width:1190px;margin:auto;display:flex;align-items:center;justify-content:space-between;padding:25px 30px;gap:12px}.logo{display:inline-flex;align-items:center;text-decoration:none;gap:0;font-size:23px;font-weight:900;letter-spacing:-1.4px}.logo-mark{font-size:28px;margin-right:9px}.logo-accent{color:#60aa87}.beta{font-size:9px;font-weight:900;letter-spacing:1.2px;color:#607576;background:#e7efe4;border-radius:8px;padding:5px 7px;margin-left:9px}.nav-actions{display:flex;align-items:center;gap:9px}.nav-create,.nav-back{padding:11px 16px;border-radius:12px;border:0;font-weight:750}.nav-create{background:#17252a;color:#fff}.nav-back{background:transparent}.nav-create:hover,.primary:hover{transform:translateY(-1px);filter:brightness(1.07)}
main{max-width:1190px;margin:auto;padding:0 30px 30px}.hero{min-height:580px;background:#14262b;color:white;border-radius:31px;display:grid;grid-template-columns:minmax(0,1.06fr) minmax(350px,.94fr);gap:38px;align-items:center;padding:66px 64px;position:relative;overflow:hidden}.hero:before{content:"";position:absolute;right:-12%;bottom:-43%;width:610px;height:610px;background:radial-gradient(circle,#4871614a,transparent 69%);pointer-events:none}.hero-copy{position:relative;z-index:1}.eyebrow{font-size:11px;font-weight:850;letter-spacing:1.5px;color:#c9dca8;display:flex;gap:8px;align-items:center}.dot{background:#8ddd6d;height:7px;width:7px;border-radius:100%;display:inline-block}.hero h1{font-size:clamp(54px,6.4vw,85px);letter-spacing:-5px;line-height:.99;margin:24px 0;font-weight:900}.hero h1 em{font-style:normal;color:var(--lime)}.hero p{font-size:17px;color:#c4d0c9;line-height:1.7;max-width:425px}.hero-buttons{display:flex;align-items:center;gap:26px;flex-wrap:wrap;margin-top:32px}.primary{background:var(--lime);color:#18262b;border:0;border-radius:13px;padding:13px 19px;font-weight:850;display:inline-flex;align-items:center;gap:18px;justify-content:center}.large{font-size:16px;padding:16px 22px}.primary span{font-size:22px;font-weight:400}.text-link{color:#e1f1e7;text-decoration:none;font-size:14px;font-weight:700}.text-link span{margin-left:8px}.hero-note{color:#c4cec6;font-size:12px;margin-top:47px}.bubble-faces{background:#29433a;color:#cbf6c5;letter-spacing:6px;padding:7px 9px;border-radius:30px;margin-right:8px}
.mock-board{position:relative;z-index:1;background:#fff;color:#24302f;transform:rotate(3deg);border-radius:20px;box-shadow:0 24px 55px #0005;padding:25px;max-width:430px;width:100%;margin:5px auto}.mock-header,.mock-line,.mock-person{display:flex;align-items:center;justify-content:space-between}.small-caps,.mock-sub{font-size:10px;letter-spacing:1px;font-weight:800;color:#6e7675}.mock-live{font-size:10px;color:#3d8059;background:#e8f8d8;padding:7px 9px;border-radius:50px;font-weight:900}.mock-title{font-size:23px;letter-spacing:-.8px;font-weight:850;margin-top:15px}.mock-title span{float:right;color:#82928b}.mock-sub{margin-top:4px}.mock-person{gap:12px;margin:20px 0}.mock-stats{flex:1}.mock-line{font-size:13px;margin-bottom:8px}.mock-line small{color:#9ca5a0}.avatar{width:39px;height:39px;border-radius:12px;display:grid;place-items:center;font-weight:900}.violet{background:#ded5ff;color:#694ec3}.coral{background:#ffe1d6;color:#c17056}.mint{background:#d7f2d6;color:#489265}.gold{background:#fbefbc;color:#8b762c}.track{height:8px;background:#ecf0ea;border-radius:50px;overflow:hidden}.track>div{height:100%;border-radius:inherit;transition:width .35s}.mock-foot{background:#f5f7f0;border-radius:11px;margin-top:14px;padding:13px;display:flex;gap:9px;font-size:12px}
.section-head{display:flex;justify-content:space-between;align-items:end;gap:24px;margin:50px 0 24px}.section-head h2{font-size:36px;line-height:1.12;letter-spacing:-1.4px;margin:5px 0 0}.section-head p{color:var(--muted);max-width:290px}.overline{font-size:10px;letter-spacing:1.9px;font-weight:850;color:#59846e}.template-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.template{background:#fff;text-align:left;padding:25px 22px;border:1px solid #e6e9e1;border-radius:18px;display:flex;align-items:flex-start;flex-direction:column;min-height:245px;transition:transform .2s,box-shadow .2s}.template:hover{transform:translateY(-5px);box-shadow:0 14px 29px #132f2710}.template-icon{width:50px;height:50px;border-radius:15px;display:grid;place-items:center;font-size:27px;margin-bottom:22px;font-weight:800}.peach{background:#fbe6da}.lilac{background:#ebe2fc}.green{background:#dcefcf}.yellow{background:#faeeaa}.template b{font-size:18px}.template span:not(.template-icon){font-size:13px;color:#657275;margin-top:5px}.template small{margin-top:auto;padding-top:18px;color:#368364;font-size:12px;font-weight:850}.how-strip{background:#e9efdf;border-radius:20px;margin:38px 0 25px;padding:30px;display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.how-strip>div{display:flex;flex-direction:column;gap:5px}.how-strip .step{color:#53966e;font-weight:900;font-size:12px}.how-strip strong{font-size:17px}.how-strip p{margin:4px 0 0;color:#67726b;font-size:13px;line-height:1.5}.footer-note{display:flex;justify-content:space-between;gap:15px;color:#344f4f;font-weight:800;font-size:13px;padding:32px 0}.footer-note span{color:#8a9188;font-size:12px;font-weight:400}.my-rooms{margin-top:36px}.my-rooms .section-head{margin-bottom:16px}.room-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.room-card{padding:20px;text-align:left;background:white;border:1px solid var(--border);border-radius:16px;display:flex;flex-direction:column;gap:8px}.room-card:hover{border-color:#7bba91}.room-card strong{font-size:18px}.room-card small{color:#717e77}.room-card .link{color:#3b9b6c;font-size:12px;font-weight:800}
.room-banner{background:var(--night);color:#fff;border-radius:26px;padding:42px;display:flex;align-items:center;justify-content:space-between;gap:25px;flex-wrap:wrap}.room-banner .overline{color:#b2d798}.room-banner h1{font-size:clamp(34px,5vw,59px);line-height:1.1;letter-spacing:-2.4px;margin:12px 0}.room-banner p{color:#ced8d1;margin:0 0 17px;max-width:600px}.room-tags{display:flex;gap:7px;flex-wrap:wrap}.tag{background:#2d3e42;color:#e0e9e2;border-radius:8px;padding:7px 10px;font-size:11px}.room-tools{display:flex;gap:10px;flex-wrap:wrap}.white-btn,.outline-btn{border:1px solid #ecf5ed;color:#1d292b;background:#fff;border-radius:12px;padding:12px 15px;font-weight:850}.outline-btn{background:transparent;color:#fff;border-color:#586b67}.connection{background:#eaf4e5;border-radius:12px;padding:12px 15px;color:#4a7655;font-size:13px;margin:17px 0}.connection.bad{background:#fff0e4;color:#a35349}
.join-panel{max-width:650px;background:white;text-align:center;border:1px solid var(--border);border-radius:22px;padding:40px;margin:40px auto;box-shadow:0 15px 40px #1a2b1a0a}.join-icon{height:65px;width:65px;margin:0 auto 18px;border-radius:20px;background:var(--lime);display:grid;place-items:center;font-size:40px}.join-panel h2{font-size:35px;letter-spacing:-1.2px;line-height:1.1;margin:12px 0}.join-panel p{color:#7a8580;max-width:450px;margin:12px auto 25px}.join-panel .form-grid{text-align:left}.join-panel .primary{margin:15px auto 0}.subtle{font-size:12px;color:#8b918a;margin-top:21px}
.stats-row{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin:22px 0}.stat-panel{padding:23px;border-radius:17px;min-height:144px;display:flex;flex-direction:column;align-items:flex-start}.stat-panel>span{font-size:10px;letter-spacing:1.1px;font-weight:900}.stat-panel strong{font-size:35px;letter-spacing:-1.5px;margin-top:9px;line-height:1.2}.stat-panel small{font-size:12px;opacity:.7;margin-top:5px}.stat-panel.lime{background:#e6f6ae}.violet-bg{background:#e8e1f9}.peach-bg{background:#fbe6d9}
.two-col{display:grid;grid-template-columns:1fr 1fr;align-items:start;gap:25px;margin:28px 0}.leader-section,.activity-section,.feed-section{background:white;border:1px solid var(--border);border-radius:20px;padding:23px}.section-head.compact{margin:0 0 12px;align-items:center}.section-head.compact h2{font-size:27px}.tiny-cup{font-size:19px}.muted{color:var(--muted)}.smaller{font-size:12px}.status-chip{border-radius:20px;background:#e8f5de;color:#3b8b5b;display:flex;align-items:center;gap:7px;font-weight:800;font-size:11px;padding:7px 10px}.status-chip .dot{width:6px;height:6px}.leader-list{margin-top:24px}.leader-card{display:flex;gap:14px;align-items:center;padding:16px 0;border-top:1px solid #eef0ec}.rank{font-size:15px;font-weight:850;color:#7c8980;width:23px}.person-circle{min-width:42px;height:42px;border-radius:13px;display:grid;place-items:center;background:#ecf1da;font-size:20px;font-weight:850}.person-circle.tone1{background:#e8e0fa}.person-circle.tone2{background:#ffecdc}.person-circle.tone3{background:#dcefd9}.person-circle.tone4{background:#f7edc1}.person-info{flex:1;min-width:0}.person-top{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:14px;margin-bottom:8px}.person-top b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.person-top small{color:#8a968f}.person-top strong{white-space:nowrap}.person-top .mine{font-size:10px;color:#558a62}.leader-card.champion .rank{color:#c49d38}
.soft-btn{background:#ebf0e8;border-radius:9px;border:0;padding:9px 11px;color:#496556;font-weight:750;font-size:12px}.your-progress{background:#f1f5ed;border-radius:13px;padding:16px;margin:19px 0}.flex-between{display:flex;justify-content:space-between;gap:8px;font-size:13px;margin-bottom:12px}.wide{height:10px}.wide>div{height:100%;border-radius:inherit;background:#7bbf78}.add-form{display:grid;grid-template-columns:1fr 103px auto;gap:7px;margin-top:18px}.add-form input,.add-form select{width:100%;min-width:0;border:1px solid #dfe6dc;border-radius:9px;padding:11px;background:#fff}.add-form button{background:#1c302b;color:#fff;border:0;border-radius:9px;padding:10px;font-weight:850}.quick-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:12px 0 17px}.quick-btn{background:#eaf4da;border:1px solid #d9eccc;border-radius:8px;color:#315a46;font-size:12px;font-weight:800;padding:8px 10px}.entry{border-top:1px solid #eef1eb;padding:13px 0;display:flex;align-items:center;gap:10px}.entry-title{flex:1;font-size:13px;min-width:0;overflow-wrap:anywhere}.entry-title strong{display:block}.entry-title small{display:block;color:#a0a59e;font-size:11px}.entry.done .entry-title strong{text-decoration:line-through;color:#929b91}.entry-actions{display:flex;align-items:center;gap:6px}.entry-actions button{border:1px solid #e2e9de;background:#fff;border-radius:8px;padding:6px 9px;font-size:11px;color:#557763}.entry-actions .remove{color:#ba776c}.feed-section{margin-bottom:20px}.feed-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px}.feed-entry{padding:14px;background:#f7f9f4;border-radius:11px;font-size:12px}.feed-entry strong{display:block;font-size:14px;margin-bottom:3px}.feed-entry span{color:#647568}
.create-dialog{max-width:660px;width:min(94vw,660px);padding:0;border:0;border-radius:24px;box-shadow:0 32px 100px #0004}.create-dialog::backdrop{background:#142226a8;backdrop-filter:blur(3px)}.create-dialog form{padding:30px 34px}.dialog-header{display:flex;justify-content:space-between;gap:15px}.dialog-header h2{font-size:30px;letter-spacing:-1px;margin:7px 0}.dialog-header p{color:#7a837d;margin:0 0 18px}.close-icon{background:#edf1e8;border:0;border-radius:50%;height:35px;width:35px;min-width:35px;font-size:26px;line-height:1}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}.form-grid.single{grid-template-columns:1fr}.form-grid label{font-size:12px;font-weight:850;color:#33463d;display:block}.form-grid input,.form-grid select{display:block;width:100%;margin-top:7px;padding:13px;border:1px solid #dce3da;border-radius:10px;min-width:0;background:white;color:#1b2820;font-weight:450}.dialog-divider{border-top:1px solid #e6eae4;margin:20px 0}.form-tip{font-size:12px;color:#78847a;margin:13px 0}.submit-btn{width:100%;justify-content:space-between;margin-top:17px;padding:16px 20px}.form-error{color:#be5e52;font-weight:750;font-size:12px;min-height:16px}.toast{position:fixed;bottom:25px;right:25px;background:#172b26;color:#fff;padding:13px 18px;border-radius:12px;box-shadow:0 13px 38px #0003;font-size:13px;max-width:min(420px,90vw);z-index:20}
@media(max-width:940px){.hero{padding:45px 40px;gap:25px;grid-template-columns:1fr 1fr}.hero h1{font-size:55px;letter-spacing:-3px}.mock-board{transform:rotate(1deg)}.template-grid{grid-template-columns:repeat(2,1fr)}.room-cards{grid-template-columns:repeat(2,1fr)}.two-col{grid-template-columns:1fr}}
@media(max-width:660px){.topbar{padding:18px}.logo{font-size:19px}.logo-mark{font-size:23px;margin-right:5px}.nav-create{padding:9px 10px;font-size:12px}.nav-back{font-size:12px;padding:8px}.beta{font-size:8px;padding:4px}main{padding:0 13px 20px}.hero{grid-template-columns:1fr;padding:41px 26px;min-height:0;border-radius:23px}.hero h1{font-size:53px}.hero p{font-size:15px}.hero-note{margin-top:26px}.mock-board{max-width:370px;margin-top:20px;padding:20px;transform:rotate(1deg)}.hero-buttons{gap:16px;margin-top:25px}.section-head{display:block;margin:32px 0 18px}.section-head h2{font-size:30px}.section-head p{max-width:none}.template-grid{gap:10px}.template{min-height:235px;padding:18px 15px}.template b{font-size:16px}.template-icon{margin-bottom:13px}.how-strip{grid-template-columns:1fr;padding:24px;gap:23px}.footer-note{flex-direction:column}.room-cards{grid-template-columns:1fr}.room-banner{padding:27px 22px}.room-banner h1{font-size:42px}.room-tools{width:100%}.room-tools button{flex:1;font-size:12px}.stats-row{gap:8px}.stat-panel{padding:15px 13px;min-height:115px}.stat-panel strong{font-size:25px}.stat-panel>span{font-size:9px}.stat-panel small{font-size:10px}.leader-section,.activity-section,.feed-section{padding:17px}.add-form{grid-template-columns:1fr 86px}.add-form button{grid-column:span 2}.feed-grid{grid-template-columns:1fr 1fr}.create-dialog form{padding:25px 20px}.form-grid{grid-template-columns:1fr}.dialog-header h2{font-size:27px}}
@media(max-width:380px){.hero h1{font-size:46px}.mock-title{font-size:20px}.template-grid{grid-template-columns:1fr}.feed-grid{grid-template-columns:1fr}.stat-panel strong{font-size:21px}.logo{font-size:17px}.nav-back{display:none}}

/* Keep the mobile header focused on creating a challenge. */
@media(max-width:660px){
 .topbar{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;padding:16px 18px}
 .topbar .logo{grid-column:1;grid-row:1;min-width:0;font-size:18px;white-space:nowrap}
 .topbar .nav-actions{display:contents}
 .topbar #accountNav{grid-column:2;grid-row:1;padding:8px 0;background:transparent;border:0;font-size:11px}
 .topbar #navCreate{grid-column:1/-1;grid-row:2;width:100%;min-height:44px;font-size:13px}
 .topbar #goHome{grid-column:1/-1;grid-row:3;justify-self:start;display:block;padding:6px 0}
 .topbar #goHome.hidden{display:none}
}
@media(max-width:380px){.topbar .beta{display:none}.topbar .logo{font-size:17px}}

.account-nav{font-size:12px;font-weight:850;color:#2e6241;text-decoration:none;padding:10px 13px;border-radius:12px;background:#e5f2df;border:1px solid #d1e5c9;white-space:nowrap}
.challenges-view #homePage>.hero,.challenges-view #homePage>.templates,.challenges-view #homePage>.how-strip{display:none}
.saved-challenges-note{font-size:13px;line-height:1.6;color:#728075;max-width:640px;margin:12px 0 0}
.challenges-empty{grid-column:1/-1;background:#fff;border:1px solid #e5e9e0;border-radius:20px;padding:30px}
.challenges-empty h3{margin:0 0 10px;font-size:23px;letter-spacing:-.5px}
.challenges-empty p{color:#728075;line-height:1.6;margin:0 0 22px;max-width:520px}
.challenges-view .my-rooms{min-height:50vh}
@media(max-width:660px){.challenges-empty{padding:23px}.saved-challenges-note{font-size:12px}}
