/* ROUTINE+ — a focused personal workspace. */
body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif}
main.redesigned-tracker{padding:0;max-width:none;margin:0}
.rp-app{background:#f5f6f8;min-height:100dvh;color:#22262c;font-size:16px}
.rp-app button{touch-action:manipulation}.rp-app button:disabled{cursor:default}
.rp-sidebar{position:fixed;left:0;top:0;bottom:0;width:224px;background:#fff;border-right:1px solid #e7e9ec;padding:31px 18px 20px;display:flex;flex-direction:column;z-index:20}
.rp-brand{display:block;padding:0 8px 32px;border-bottom:1px solid #eff0f2}.rp-brand .brand-crop{width:162px;height:32px}.rp-brand .brand-crop img{width:235px;left:-40px;top:-107px}
.rp-nav-caption{font-size:11px;letter-spacing:.15em;font-weight:600;color:#90969f;margin:30px 13px 16px}
.rp-sidebar nav{display:flex;flex-direction:column;gap:7px}.rp-sidebar nav button{width:100%;display:flex;align-items:center;gap:13px;min-height:48px;padding:12px 15px;background:none;border:0;border-radius:9px;font-size:14px;color:#737983;text-align:left;transition:background .16s,color .16s}.rp-sidebar nav button:hover{background:#f3f4f6;color:#20252b}.rp-sidebar nav button.active{background:#24272d;color:#fff;box-shadow:0 4px 9px #20252b12}.rp-sidebar nav svg{stroke-width:1.6}
.rp-sidebar-bottom{margin-top:auto}.rp-sidebar-bottom>button{width:100%;border:1px solid #e7e9ed;background:#fff;border-radius:10px;display:flex;align-items:center;gap:11px;padding:12px;text-align:left}.rp-sidebar-bottom>button>span:nth-child(2){display:flex;flex-direction:column;gap:5px;min-width:0;flex:1}.rp-sidebar-bottom strong{font-size:13px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rp-sidebar-bottom small{font-size:12px;color:#8b929b}.rp-avatar{width:33px;height:33px;display:flex;align-items:center;justify-content:center;flex-shrink:0;border-radius:9px;background:#e9edf2;font-size:14px;font-weight:600;color:#465164}.rp-sidebar-bottom>p{text-align:center;color:#a1a7af;font-size:11px;margin-top:17px}
.rp-workspace{margin-left:224px;min-width:0}.rp-topbar{height:78px;background:#fff;border-bottom:1px solid #e7e9ed;display:flex;align-items:center;justify-content:space-between;padding:0 38px}.rp-topbar>span{font-size:14px;font-weight:500;color:#606873}.rp-topbar>div{display:flex;gap:23px;align-items:center}.rp-save{display:flex;align-items:center;gap:6px;font-size:12px;color:#7b858f}.rp-save.error{color:#a94338}.rp-topbar button{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:9px;border:1px solid #e3e6ea;background:#fff;color:#596575}
.rp-content{max-width:1510px;margin:0 auto;padding:35px 38px 40px}.rp-page-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:29px}.rp-eyebrow{font-size:11px;font-weight:600;letter-spacing:.14em;color:#9299a3;margin-bottom:10px}.compact-tracker .rp-page-heading h1{font-size:35px;letter-spacing:-1.2px;font-weight:600;line-height:1.16}.rp-page-heading h1 span{color:#a9b2bf}.rp-page-heading>.btn{min-height:44px;border-radius:8px;font-size:14px;padding:12px 17px}
.rp-daily-layout{display:grid;grid-template-columns:minmax(0,1fr) 286px;gap:25px;align-items:start}.rp-daily-main{min-width:0}.rp-day-summary{display:flex;align-items:center;justify-content:space-between;gap:15px;position:relative;padding:25px 24px 30px;background:#fff;border:1px solid #e4e7ec;border-radius:13px;overflow:hidden}.rp-day-summary>div:first-child{min-width:0}.rp-date{display:flex;align-items:center;gap:10px}.rp-date h2{font-size:19px;font-weight:500;text-transform:capitalize;line-height:1.5}.rp-date button{width:29px;min-height:34px;display:flex;align-items:center;justify-content:center;border:0;background:none;color:#828b97;flex-shrink:0}.rp-day-summary p{font-size:13px;color:#89919b;margin:9px 0 0 39px;line-height:1.6}.rp-day-score{display:flex;flex-direction:column;align-items:flex-end;gap:4px;padding-left:18px}.rp-day-score>strong{font-size:37px;line-height:1;letter-spacing:-1.5px;font-weight:500;white-space:nowrap}.rp-day-score>strong span{font-size:19px;font-weight:400;letter-spacing:0;color:#a3acb7;margin-left:3px}.rp-day-score small{color:#929ba7;font-size:12px}.rp-day-meter{height:4px;position:absolute;bottom:0;left:0;right:0;background:#e8ebef}.rp-day-meter span{display:block;height:100%;background:#2c3440;transition:width .2s ease}
.rp-list-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;margin:26px 0 16px}.rp-list-heading h2{font-size:17px;letter-spacing:-.25px;font-weight:600}.rp-list-heading h2 span{font-size:12px;font-weight:400;color:#9ba3ae;margin-left:7px}.rp-list-heading>span{color:#959da7;font-size:12px}
.rp-habits{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.rp-habit{border:1px solid #e3e7ec;border-radius:10px;background:#fff;display:flex;align-items:center;min-width:0;padding:4px 6px 4px 18px;min-height:88px;transition:background .14s,border-color .14s}.rp-habit:hover{border-color:#c9d0d9}.rp-habit.checked{background:#eef1f5;border-color:#d6dde6}.rp-habit>label{display:flex;align-items:center;gap:13px;flex:1;min-width:0;min-height:76px;cursor:pointer;padding:10px 0}.rp-habit [data-slot=checkbox]{width:25px;height:25px;border-radius:6px;border:1.5px solid #c4cbd5;box-shadow:none;flex-shrink:0;background:#fff}.rp-habit [data-state=checked]{background:#303845;color:#fff;border-color:#303845}.rp-habit label>span{display:flex;min-width:0;flex-direction:column;gap:7px}.rp-habit strong{font-size:15px;line-height:1.4;font-weight:500;overflow-wrap:anywhere}.rp-habit small{font-size:12px;line-height:1.4;color:#949ca8}.rp-habit>button{width:35px;height:44px;flex-shrink:0;display:flex;align-items:center;justify-content:center;color:#a0a8b2;background:none;border:0;border-radius:6px}.rp-habit>button:hover{color:#273141;background:#e8edf3}.rp-day-finish{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:22px}.rp-day-finish>span{font-size:12px;line-height:1.6;color:#939ca7;max-width:280px}.rp-day-finish>strong{font-size:14px;display:flex;align-items:center;gap:7px;font-weight:500}.rp-day-finish .btn{font-size:13px;min-height:41px;background:transparent;color:#596577}
.rp-right-rail{display:flex;flex-direction:column;gap:20px}.rp-mini-month{border:1px solid #e4e7eb;background:#fff;padding:15px;border-radius:12px}.rp-month-control{display:flex;align-items:center;gap:5px;justify-content:space-between}.rp-month-control>button{width:34px;height:38px;display:flex;align-items:center;justify-content:center;border:0;background:none;border-radius:6px;color:#747d8b;flex-shrink:0}.rp-month-control>button:hover{background:#eff2f6}.rp-month-control>label{position:relative;display:flex;align-items:center;justify-content:center;min-height:40px;flex:1;text-transform:capitalize;font-size:15px;font-weight:500;cursor:pointer;white-space:nowrap}.rp-month-control input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;height:100%}.rp-month-control label:focus-within{outline:2px solid #8997aa;border-radius:5px}.rp-page-heading>.rp-month-control{background:#fff;border:1px solid #e1e5eb;border-radius:8px;padding:3px 5px;min-width:245px}
.rp-calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px 2px;margin:16px 0 0}.rp-weekday{font-size:11px;text-align:center;color:#a0a7b1;margin-bottom:8px}.rp-calendar>button{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:38px;border:1px solid transparent;border-radius:7px;background:none;gap:1px;color:#606a78}.rp-calendar>button:hover{background:#edf1f6}.rp-calendar strong{font-weight:400;font-size:13px}.rp-calendar .selected{background:#2d3542;color:#fff;border-color:#2d3542}.rp-calendar .selected:hover{background:#465263}.rp-calendar .today:not(.selected){border-color:#abb7c7}.rp-calendar .complete:not(.selected){background:#f0f3f7;color:#64748b}.rp-calendar-dot{display:flex;align-items:center;justify-content:center;height:8px;font-size:12px}.rp-today{border:0;border-radius:6px;background:#f4f6f9;width:100%;margin:14px 0 0;min-height:34px;font-size:12px;color:#657287}.rp-filter{display:flex;align-items:center;gap:9px;font-size:12px;color:#8993a1;cursor:pointer;min-height:42px}.rp-mini-month .rp-filter{margin-top:12px;padding-top:10px;border-top:1px solid #eef0f4}.rp-filter [data-slot=checkbox]{width:17px;height:17px;flex-shrink:0;border-radius:4px}.rp-filter [data-state=checked]{background:#303845;color:#fff}
.rp-journal-card{background:#262c36;border-radius:12px;color:#fff;padding:25px 23px}.rp-journal-card>svg{color:#9ca8ba;margin-bottom:17px;stroke-width:1.5}.rp-journal-card h2{font-size:20px;font-weight:500;letter-spacing:-.5px}.rp-journal-card p{color:#a5afbf;font-size:13px;line-height:1.8;margin-top:12px;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere;white-space:pre-wrap}.rp-journal-card .btn{width:100%;min-height:40px;margin-top:22px;font-size:13px;border-color:#4b5566;background:#363f4d;color:#e2e7ee}.rp-journal-card .btn:hover{background:#465265}
.rp-month-toolbar{display:flex;align-items:center;gap:22px;margin-bottom:22px}.rp-segment{display:flex;background:#e8ebf0;padding:4px;border-radius:9px;gap:4px;margin-right:auto}.rp-segment>button{display:flex;align-items:center;gap:8px;min-height:36px;padding:8px 16px;border:0;border-radius:6px;background:none;font-size:14px;color:#8b95a3}.rp-segment>button[aria-pressed=true]{background:#fff;color:#2f3a4a;box-shadow:0 2px 4px #1f293710}.rp-month-toolbar .rp-filter{font-size:13px}.rp-month-surface{border:1px solid #e2e6ec;border-radius:13px;background:#fff;overflow:hidden}.rp-calendar.large{margin:0;padding:22px;gap:9px}.rp-calendar.large .rp-weekday{font-size:12px;padding:6px 0 9px}.rp-calendar.large button{min-height:107px;padding:17px 14px;align-items:flex-start;justify-content:space-between;border:1px solid #ebedf1;border-radius:9px;gap:17px}.rp-calendar.large strong{font-size:21px;font-weight:500}.rp-calendar.large small{font-size:12px;color:#99a2b0;display:flex;align-items:center;gap:4px}.rp-calendar.large .selected{border-color:#2d3542}.rp-calendar.large .selected small{color:#b1bccd}.rp-month-footer{display:flex;align-items:center;gap:30px;color:#929dab;font-size:13px;margin-top:18px}.rp-month-footer>span:first-child{display:flex;align-items:center;gap:6px}.rp-month-footer>button{margin-left:auto;font-size:13px}
.rp-week-control{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;gap:20px}.rp-week-control>div{display:flex;flex-direction:column;gap:6px;text-align:center}.rp-week-control strong{font-size:16px;font-weight:500}.rp-week-control span{font-size:12px;color:#98a3b1}.rp-week-control button{padding:8px;min-width:40px}.rp-month-surface .habit-table{width:100%;table-layout:fixed}.rp-month-surface .habit-table .habit-name{width:230px;padding:10px 16px}.rp-month-surface .habit-table .goal-cell{width:115px;position:sticky;right:0;background:#fff;border-left:1px solid #edf0f4}.rp-month-surface .habit-table th.goal-cell{background:#f8f9fb}.rp-month-surface .habit-table td{height:57px}.rp-month-surface .habit-edit{font-size:14px}.rp-month-surface .habit-delete{opacity:.4}.rp-month-surface tr:hover .habit-delete{opacity:1}.rp-month-surface .habit-row-actions{gap:10px}.rp-month-surface .day-check{height:52px}.rp-month-surface .selected-day{background:#eef2f7}.rp-month-surface .habit-table .goal-cell strong{font-size:14px}.rp-table-hint{padding:16px 24px;border-top:1px solid #e8ecf2;font-size:12px;color:#919dab}
.rp-progress-layout{display:grid;grid-template-columns:1.1fr 1fr;gap:22px}.rp-progress-hero{border-radius:14px;background:#252d39;color:#fff;padding:30px 34px}.rp-progress-hero>p{font-size:11px;letter-spacing:.12em;color:#a3afc0}.rp-progress-hero>strong{display:block;font-size:84px;letter-spacing:-5px;font-weight:400;line-height:1.2;margin:10px 0 19px}.rp-progress-hero small{font-size:33px;color:#9aaabd;letter-spacing:-1px;margin-left:5px}.rp-progress-line{height:4px;border-radius:3px;background:#4c5768;overflow:hidden}.rp-progress-line span{height:100%;display:block;background:#d4ddeb}.rp-progress-hero>span{display:block;font-size:13px;color:#b3bfd0;margin-top:17px}.rp-progress-numbers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:center;border:1px solid #e2e7ee;border-radius:13px;background:#fff;padding:25px 10px}.rp-progress-numbers>div{padding:0 18px;border-right:1px solid #e6eaf0;display:flex;flex-direction:column;gap:15px}.rp-progress-numbers>div:last-child{border:0}.rp-progress-numbers strong{font-size:42px;font-weight:500;letter-spacing:-1.5px;white-space:nowrap}.rp-progress-numbers small{font-size:17px;color:#a6b1be;letter-spacing:0}.rp-progress-numbers span{font-size:13px;color:#8e9aaa;line-height:1.6}
.rp-report-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:25px}.rp-report-cards>button,.rp-reward-card{position:relative;display:flex;flex-direction:column;align-items:flex-start;border:1px solid #e1e6ed;border-radius:12px;background:#fff;text-align:left;padding:28px;color:#536377}.rp-report-cards h2{font-size:20px;color:#303b4b;font-weight:500;margin:20px 0 12px;letter-spacing:-.5px;overflow-wrap:anywhere}.rp-report-cards p{font-size:14px;color:#8c98a8;line-height:1.7}.rp-report-cards>button>span{font-size:13px;color:#566a85;display:block;margin-top:25px}.rp-report-cards>button:hover{border-color:#bbc8d8;background:#fcfdff}.rp-reward-card .tool-button{background:#eff3f8;border:0;color:#596e8a;min-height:37px;font-size:13px}.rp-reward-card .tool-button::after{content:'';position:absolute;inset:0;border-radius:12px}
.rp-empty{display:flex;flex-direction:column;align-items:center;gap:20px;padding:55px 25px;border:1px solid #e0e6ed;border-radius:12px;background:#fff;text-align:center}.rp-empty h3{font-size:18px;font-weight:500}.rp-screen{animation:mobile-screen-in .18s ease-out}
.account-dialog{max-width:560px;width:calc(100vw - 32px);padding:30px;display:block}.account-eyebrow{font-size:11px;letter-spacing:.15em;color:#99a3b2;margin-bottom:10px}.account-dialog [data-slot=dialog-header]{padding-right:35px;margin-bottom:27px}.account-profile{display:flex;gap:17px;align-items:center;padding:23px 20px;border-radius:11px;background:#f3f5f8;margin-bottom:20px}.account-avatar{display:flex;align-items:center;justify-content:center;width:54px;height:54px;flex-shrink:0;background:#2e3847;border-radius:12px;color:#fff;font-size:24px}.account-profile>div{min-width:0;display:flex;flex-direction:column;gap:9px}.account-profile strong{font-size:19px;font-weight:500;overflow-wrap:anywhere}.account-profile>div>span{display:flex;align-items:center;gap:5px;font-size:12px;color:#8390a1}.account-fields{margin:0}.account-fields>div{display:flex;justify-content:space-between;gap:22px;padding:18px 0;border-bottom:1px solid #edf0f4;font-size:14px}.account-fields dt{display:flex;align-items:center;gap:10px;color:#8b98a8;flex-shrink:0}.account-fields dd{text-align:right;margin:0;overflow-wrap:anywhere;min-width:0;color:#39495d}.account-data{margin-top:24px}.account-data h3{font-size:16px;font-weight:500}.account-data p{font-size:14px;color:#8a97a8;line-height:1.7;margin:10px 0 17px}.account-data .btn{font-size:14px;min-height:43px}.account-session{display:flex;flex-wrap:wrap;justify-content:space-between;gap:20px;border-top:1px solid #e9edf3;padding-top:21px;margin-top:27px}.account-session a{display:flex;align-items:center;gap:8px;font-size:13px;color:#7d8b9f;text-decoration:none;min-height:32px}.account-session a:hover{color:#243954;text-decoration:underline}
.mobile-header-actions{display:flex;align-items:center;gap:12px}.mobile-account-button{display:flex;align-items:center;justify-content:center;width:38px;height:40px;background:#fff;border:1px solid #e5e9ef;border-radius:8px;color:#677486}
.auth-page{display:grid;grid-template-columns:1fr 1fr;min-height:100dvh;max-width:none;padding:0;background:#fff}.auth-intro{padding:60px;display:flex;flex-direction:column;background:#252c36;color:#fff}.auth-wordmark{font-size:23px;font-weight:400;letter-spacing:.24em}.auth-intro>div:last-child{margin:auto 0;max-width:480px}.auth-intro h1{font-size:60px;line-height:1.1;letter-spacing:-2.5px;font-weight:500}.auth-intro p{font-size:17px;color:#9ba8bc;line-height:1.8;margin-top:30px}.auth-card-wrap{display:flex;align-items:center;justify-content:center;padding:50px}.auth-card{width:100%;max-width:390px}.auth-card h2{font-size:30px;font-weight:500;letter-spacing:-1px;margin-bottom:15px}.auth-card>p{font-size:15px;color:#8593a6;line-height:1.8;margin-bottom:28px}.auth-card .btn{width:100%;min-height:49px;text-decoration:none;font-size:15px}.auth-card>small{display:block;font-size:12px;line-height:1.8;color:#9ca8b9;margin-top:20px}.auth-card .auth-profile{padding:15px;border:1px solid #e3e9f0;border-radius:10px;margin:20px 0;font-size:14px;overflow-wrap:anywhere}.auth-card .auth-secondary{display:block;text-align:center;margin-top:19px;color:#7f8c9e;font-size:14px;text-decoration:none}
@media(min-width:901px) and (max-width:1250px){.rp-sidebar{width:195px;padding-left:13px;padding-right:13px}.rp-workspace{margin-left:195px}.rp-content{padding:28px 24px}.rp-topbar{padding:0 25px}.rp-daily-layout{grid-template-columns:minmax(0,1fr) 248px;gap:18px}.rp-habits{grid-template-columns:1fr}.rp-date{gap:4px}.rp-date h2{font-size:16px}.rp-day-summary{padding:20px 13px 26px}.rp-day-summary p{margin-left:32px}.rp-day-score{padding-left:0}.rp-list-heading>span{display:none}.rp-calendar.large button{min-height:90px;padding:12px 9px}.rp-report-cards{gap:12px}.rp-report-cards>button,.rp-reward-card{padding:21px}.rp-progress-layout{grid-template-columns:1fr}.rp-progress-numbers{padding:22px}.rp-progress-numbers>div{text-align:center}}
@media(max-width:900px){.account-dialog{padding:26px 20px!important}.account-dialog .account-profile{padding:19px 16px}.account-fields>div{flex-direction:column;gap:10px}.account-fields dd{text-align:left;padding-left:28px;font-size:15px}.account-session a{min-height:44px;font-size:14px}.account-data .btn{width:100%;min-height:48px}.auth-page{grid-template-columns:1fr}.auth-intro{padding:30px 25px}.auth-intro>div:last-child{margin:35px 0 10px}.auth-intro h1{font-size:39px}.auth-intro p{font-size:15px;margin-top:18px}.auth-card-wrap{padding:38px 25px}.auth-wordmark{font-size:19px}.auth-card h2{font-size:27px}}
@media(prefers-reduced-motion:reduce){.rp-screen{animation:none}.rp-app *{transition:none!important}}

.rp-habit small,.rp-day-summary p,.rp-day-finish>span{color:#788596}.rp-report-cards p,.account-data p{color:#738399}.rp-sidebar nav button{font-weight:450}

/* Same original asset and framing as the Routine + showcase. */
.routine-logo{display:block;width:162px;aspect-ratio:1401/239;background:url('/routine-plus-logo-transparent.png') 49.63% 47.26%/109.635% auto no-repeat;flex-shrink:0}
.auth-brand{display:block;align-self:flex-start;padding:14px 18px;background:#fff;border-radius:8px}
.auth-brand .routine-logo{width:190px}
@media(max-width:900px){.mobile-header .routine-logo{width:150px}.auth-brand .routine-logo{width:162px}}
