:root{--paper:#f2efe6;--ink:#191917;--muted:#75736d;--line:#d9d5ca;--orange:#f05a32;--orange-dark:#c94220;--green:#355c45;--card:#f8f6f0;--shadow:0 18px 55px rgba(33,28,20,.08)}
*{box-sizing:border-box}html{scroll-behavior:auto}html.lenis,html.lenis body{height:auto}.lenis.lenis-smooth{scroll-behavior:auto!important}.lenis.lenis-stopped{overflow:hidden}body{margin:0;background:var(--paper);color:var(--ink);font-family:Manrope,sans-serif;min-height:100vh}.noise{position:fixed;inset:0;pointer-events:none;opacity:.16;z-index:10;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.95' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.13'/%3E%3C/svg%3E")}.topbar{height:76px;border-bottom:1px solid var(--line);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 4vw;position:sticky;top:0;background:rgba(242,239,230,.88);backdrop-filter:blur(18px);z-index:9}.brand{display:flex;align-items:center;gap:9px;color:var(--ink);text-decoration:none;font-family:'DM Mono',monospace;font-size:13px;font-weight:500;letter-spacing:.06em}.brand-mark{display:grid;place-items:center;width:35px;height:35px;background:var(--orange);color:#fff;font-weight:500;transform:rotate(-3deg)}nav{display:flex;height:100%;gap:32px}.nav-link{position:relative;border:0;background:none;font:600 12px 'DM Mono',monospace;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);cursor:pointer}.nav-link.active{color:var(--ink)}.nav-link.active:after{content:"";height:2px;background:var(--orange);position:absolute;left:0;right:0;bottom:0}.profile-pill{justify-self:end;border:1px solid var(--line);background:rgba(255,255,255,.35);padding:5px 13px 5px 5px;border-radius:30px;display:flex;gap:8px;align-items:center;font:600 12px Manrope;cursor:pointer}.avatar{width:29px;height:29px;border-radius:50%;background:var(--ink);color:#fff;display:grid;place-items:center;font:500 11px 'DM Mono'}main{width:min(1160px,92vw);margin:auto;padding:74px 0 90px}.hero{display:grid;grid-template-columns:1.55fr .45fr;align-items:end;padding-bottom:55px}.eyebrow,.kicker{font:500 11px 'DM Mono',monospace;letter-spacing:.1em;color:var(--muted);margin:0 0 18px}.live-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--orange);margin-right:8px;box-shadow:0 0 0 4px rgba(240,90,50,.12)}h1{font-size:clamp(43px,6.2vw,82px);line-height:.98;letter-spacing:-.055em;margin:0;font-weight:500}h1 em{color:var(--orange);font-family:Georgia,serif;font-weight:400}.hero-meta{padding-bottom:8px;font:500 12px 'DM Mono',monospace;color:var(--muted)}.hero-meta p{margin:8px 0}.hero-meta strong{color:var(--ink)}.progress-line{height:4px;background:var(--line);margin:17px 0}.progress-line span{display:block;height:100%;background:var(--orange);width:10%}.view{display:none}.view.active{display:block}.today-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(260px,.65fr);gap:20px}.card{background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow);will-change:transform}.checklist-card{padding:34px 36px 24px}.card-head{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding-bottom:25px}.card h2,.crew-heading h2,.modal h2{font-size:26px;letter-spacing:-.04em;margin:0;font-weight:600}.score-ring{border:1px solid var(--line);border-radius:50%;width:58px;height:58px;display:grid;place-content:center;text-align:center}.score-ring b{font:500 16px 'DM Mono'}.score-ring small{font:400 9px 'DM Mono';color:var(--muted)}.goal-list{padding-top:6px}.goal-row{display:grid;grid-template-columns:auto 1fr auto;gap:15px;align-items:center;min-height:64px;border-bottom:1px solid var(--line);cursor:pointer}.goal-icon{font-size:18px;color:var(--muted);width:22px;text-align:center}.goal-row label{font-size:14px;font-weight:600;cursor:pointer}.goal-row.done label{text-decoration:line-through;color:var(--muted)}.check{appearance:none;width:23px;height:23px;border:1px solid #b7b2a6;border-radius:50%;display:grid;place-content:center;cursor:pointer}.check:checked{background:var(--orange);border-color:var(--orange)}.check:checked:after{content:"✓";color:#fff;font-size:13px}.add-goal{height:58px;border:0;background:none;color:var(--muted);font:600 12px Manrope;cursor:pointer;padding:0}.add-goal span{font-size:17px;margin-right:8px}.card-foot{border-top:1px solid var(--line);padding-top:22px;display:flex;align-items:center;justify-content:space-between;font:400 10px 'DM Mono';color:var(--muted)}.primary-button{border:0;background:var(--ink);color:#fff;padding:14px 18px;font:600 11px 'DM Mono';text-transform:uppercase;letter-spacing:.05em;cursor:pointer;transition:background .2s}.primary-button:hover{background:var(--orange)}.primary-button span{margin-left:14px}.side-stack{display:grid;gap:20px}.streak-card{padding:28px 28px 24px}.streak-number{display:flex;align-items:end;gap:10px;border-bottom:1px solid var(--line);padding-bottom:15px}.streak-number span{font-size:70px;line-height:1;font-weight:500;letter-spacing:-.08em;color:var(--orange)}.streak-number small{font:500 10px 'DM Mono';margin-bottom:10px;color:var(--muted)}.streak-card>p:not(.kicker){font-size:12px;color:var(--muted);margin:14px 0 20px}.mini-week{display:grid;grid-template-columns:repeat(7,1fr);gap:7px}.day-cell{text-align:center}.day-cell i{display:block;aspect-ratio:1;border:1px solid var(--line);margin-bottom:7px}.day-cell i.complete{background:var(--green);border-color:var(--green)}.day-cell i.today{outline:2px solid var(--orange);outline-offset:2px}.day-cell small{font:400 8px 'DM Mono';color:var(--muted)}.quote-card{background:var(--ink);color:#fff;padding:26px 28px;min-height:160px;position:relative;overflow:hidden}.quote-card>span{font:80px Georgia;color:var(--orange);position:absolute;right:15px;top:2px;opacity:.7}.quote-card p{font:italic 22px Georgia;margin:28px 0 22px;max-width:200px}.quote-card small{font:400 9px 'DM Mono';color:#aaa}.crew-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:24px}.legend{display:flex;gap:5px;align-items:center;font:400 8px 'DM Mono';color:var(--muted)}.legend i{width:10px;height:10px;background:#dfdbd0}.legend i:nth-of-type(2){background:#f4c0ad}.legend i:nth-of-type(3){background:#ef8b69}.legend i:nth-of-type(4){background:#e95a32}.legend i:nth-of-type(5){background:#94361e}.crew-list{border-top:1px solid var(--line)}.member-row{display:grid;grid-template-columns:220px 1fr 90px;gap:28px;align-items:center;padding:25px 0;border-bottom:1px solid var(--line)}.member-info{display:flex;align-items:center;gap:12px}.member-info .avatar{width:38px;height:38px}.member-info b{font-size:13px;display:block}.member-info small,.member-score small{font:400 9px 'DM Mono';color:var(--muted)}.heatmap{display:grid;grid-template-rows:repeat(7,10px);grid-auto-flow:column;grid-auto-columns:10px;gap:4px;overflow:hidden}.heat{background:#dfdbd0}.heat.l1{background:#f4c0ad}.heat.l2{background:#ef8b69}.heat.l3{background:#e95a32}.heat.l4{background:#94361e}.member-score{text-align:right}.member-score b{display:block;font:500 22px 'DM Mono'}.modal-backdrop{position:fixed;inset:0;background:rgba(25,25,23,.57);backdrop-filter:blur(8px);z-index:20;display:none;place-items:center;padding:20px}.modal-backdrop.open{display:grid}.modal{position:relative;width:min(450px,100%);background:var(--paper);border:1px solid rgba(255,255,255,.3);padding:38px;box-shadow:0 30px 100px rgba(0,0,0,.25)}.auth-modal{text-align:center}.close-button{position:absolute;right:16px;top:12px;background:none;border:0;font-size:24px;color:var(--muted);cursor:pointer}.modal-mark{width:50px;height:50px;background:var(--orange);color:#fff;display:grid;place-items:center;margin:0 auto 27px;font:500 16px 'DM Mono';transform:rotate(-3deg)}.modal-copy{color:var(--muted);font-size:13px;line-height:1.6;margin:14px auto 24px;max-width:340px}.google-button{width:100%;height:49px;border:1px solid var(--line);background:#fff;font:600 12px Manrope;display:flex;align-items:center;justify-content:center;gap:10px;cursor:pointer}.google-button svg{width:18px}.or{display:flex;align-items:center;gap:12px;margin:19px 0;color:var(--muted);font:400 9px 'DM Mono';text-transform:uppercase}.or span{height:1px;background:var(--line);flex:1}.modal form{text-align:left}.modal label{font:500 10px 'DM Mono';text-transform:uppercase;color:var(--muted);letter-spacing:.05em}.modal input{width:100%;height:48px;background:rgba(255,255,255,.5);border:1px solid var(--line);padding:0 14px;margin:8px 0 15px;font:500 14px Manrope;outline:none}.modal input:focus{border-color:var(--orange)}.full{width:100%;height:48px}.privacy-note{display:block;margin-top:15px;color:var(--muted);font:400 8px 'DM Mono'}.icon-picker{display:flex;gap:8px;margin-bottom:20px}.icon-picker button{width:42px;height:42px;border:1px solid var(--line);background:transparent;cursor:pointer}.icon-picker button.selected{border-color:var(--orange);background:rgba(240,90,50,.1);color:var(--orange)}.toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%,20px);background:var(--ink);color:#fff;padding:12px 18px;font:500 11px 'DM Mono';opacity:0;pointer-events:none;transition:.25s;z-index:30}.toast.show{opacity:1;transform:translate(-50%,0)}
@media(max-width:760px){.topbar{padding:0 20px;grid-template-columns:1fr auto}.topbar nav{position:fixed;bottom:0;left:0;right:0;height:58px;background:var(--paper);border-top:1px solid var(--line);justify-content:center;z-index:15}.profile-pill{grid-column:2}.profile-pill #headerName{display:none}main{padding:45px 0 85px}.hero{grid-template-columns:1fr;gap:35px;padding-bottom:35px}.today-grid{grid-template-columns:1fr}.checklist-card{padding:25px 20px 20px}.card-foot{align-items:flex-start;gap:18px;flex-direction:column}.card-foot .primary-button{width:100%}.side-stack{grid-template-columns:1fr}.quote-card{min-height:150px}.crew-heading{align-items:flex-start;gap:25px;flex-direction:column}.member-row{grid-template-columns:150px 1fr;gap:12px}.heatmap{grid-row:2;grid-column:1/3}.member-score{grid-column:2;grid-row:1}.modal{padding:32px 24px}.member-info small{max-width:90px;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}}
.empty-goals{width:100%;min-height:175px;margin-top:6px;border:1px dashed #c9c3b6;background:rgba(255,255,255,.22);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;color:var(--ink);cursor:pointer;transition:border-color .2s,background .2s}.empty-goals:hover{border-color:var(--orange);background:rgba(240,90,50,.04)}.empty-goals span{width:34px;height:34px;border-radius:50%;background:var(--orange);color:#fff;display:grid;place-items:center;font-size:20px;margin-bottom:4px}.empty-goals b{font:600 14px Manrope}.empty-goals small{font:400 10px 'DM Mono';color:var(--muted)}
.daily-quote{margin-top:80px;padding:54px 0 16px;border-top:1px solid var(--line);display:grid;grid-template-columns:190px 1fr;gap:48px;align-items:start}.quote-label{display:flex;align-items:center;gap:12px}.quote-label>span{width:48px;height:48px;background:var(--orange);color:#fff;display:grid;place-items:center;font:500 14px 'DM Mono';transform:rotate(-3deg)}.quote-label small{font:500 9px/1.5 'DM Mono';letter-spacing:.1em;color:var(--muted)}.daily-quote blockquote{position:relative;margin:0;max-width:800px}.daily-quote .quote-mark{position:absolute;left:-48px;top:-26px;color:var(--orange);font:80px Georgia;opacity:.38}.daily-quote p{font:italic clamp(28px,4vw,48px)/1.15 Georgia,serif;letter-spacing:-.025em;margin:0 0 24px}.daily-quote cite{font:500 10px 'DM Mono';letter-spacing:.1em;color:var(--muted);font-style:normal}@media(max-width:760px){.daily-quote{margin-top:55px;grid-template-columns:1fr;gap:32px;padding-top:35px}.daily-quote .quote-mark{left:auto;right:0;top:-35px}.daily-quote p{padding-right:18px}}
.form-error{display:none;color:var(--orange-dark);font:500 10px 'DM Mono';margin:0 0 12px}.form-error.show{display:block}
.google-signin{min-height:44px;display:flex;justify-content:center;margin:22px 0 15px}.google-signin>div{width:100%!important}.google-signin iframe{margin:auto!important}
.goal-copy{text-align:left;margin:10px 0 20px}
