.mr-app{--mr-ink:#624657;--mr-pink:#f9dbe8;box-sizing:border-box;width:100%;max-width:460px;margin:28px auto;padding:22px 18px;background:#fff5f8;border:1px solid #f4dce6;border-radius:38px;box-shadow:0 18px 65px #78455919;color:var(--mr-ink);font:15px/1.6 ui-rounded,'Trebuchet MS',sans-serif;text-align:left}.mr-app *{box-sizing:border-box}.mr-app [hidden]{display:none!important}.mr-header{text-align:center;padding:8px 8px 18px}.mr-bow{display:block;font-size:44px}.mr-header small{font-size:10px;letter-spacing:3px;color:#85576c}.mr-app h2{font-size:27px!important;line-height:1.3;margin:8px 0;color:#704658}.mr-app h3{font-size:19px;margin:0 0 16px;color:#704658}.mr-app h4{margin:18px 0 8px}.mr-header p{font-size:13px}.mr-card{background:#fffdfd;border:1px solid #efdee7;border-radius:24px;padding:20px;margin:16px 0}.mr-tabs{display:flex;gap:6px;background:#f5e8f0;padding:5px;border-radius:19px}.mr-app button,.mr-app input[type=submit]{font:inherit;cursor:pointer;background:#f2d5e4;color:#5e3b50;border:0;border-radius:14px;padding:12px 14px;min-height:46px}.mr-tabs button{flex:1;padding:10px 3px;font-size:13px;background:transparent}.mr-tabs button[aria-pressed=true]{background:white;box-shadow:0 3px 9px #88506b13}.mr-app label{display:block;font-size:13px;font-weight:600;margin:12px 0}.mr-app input:not([type=checkbox]):not([type=submit]):not([type=radio]),.mr-app textarea{display:block;width:100%;min-width:0;max-width:100%;border:1px solid #e1ced9;border-radius:12px;background:#fffafd;padding:11px 10px;margin-top:5px;font:inherit;color:#533b49;min-height:45px}.mr-app input:focus-visible,.mr-app textarea:focus-visible,.mr-app button:focus-visible,.mr-app a:focus-visible{outline:3px solid #9578b4;outline-offset:3px}.mr-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.mr-hint{font-size:12px;color:#735f6b;line-height:1.6}.mr-habits{display:grid;grid-template-columns:1fr 1fr;gap:9px}.mr-habits label{border:1px solid #e9d9ec;border-radius:16px;background:#f7effc;padding:12px 9px;display:flex;gap:7px;align-items:center;margin:0;font-size:12px}.mr-habits input{accent-color:#a95e86;width:18px;height:18px;flex-shrink:0}.mr-app .mr-primary{width:100%;background:#85506f;color:white;font-weight:700;margin:5px 0}.mr-app .mr-delete{display:block;background:transparent;text-decoration:underline;font-size:12px;margin:5px auto}.mr-stats{display:grid;grid-template-columns:1fr 1fr;gap:10px}.mr-stats div{border-radius:18px;background:#f1ebfb;padding:14px 10px;text-align:center}.mr-stats div:nth-child(2n){background:#e8f3ee}.mr-stats strong{display:block;font-size:21px;overflow-wrap:anywhere}.mr-stats span{font-size:11px}.mr-calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:5px;text-align:center}.mr-calendar a{display:grid;place-items:center;min-height:36px;border-radius:11px;background:#f8f1f5;text-decoration:none;color:#65465a}.mr-calendar .mr-filled{background:#f1c5d9;font-weight:bold}.mr-date{display:flex;align-items:end;gap:12px}.mr-date label{flex:1;min-width:0;margin:0}.mr-footer{text-align:center;font-size:11px;padding:20px 0 3px}.mr-footer a{display:block;color:#75405e}.mr-success{background:#e7f4eb;padding:12px;border-radius:14px;text-align:center}.mr-app details{border-top:1px solid #eee0e7;padding:12px 0;overflow-wrap:anywhere}.mr-app summary{cursor:pointer}.mr-app .login-remember label{display:flex;gap:8px;align-items:center}@media(max-width:480px){.mr-app{margin:10px auto;border-radius:25px;padding:18px 12px}.mr-card{padding:16px}.mr-grid{gap:8px}}@media(prefers-reduced-motion:reduce){.mr-app *{scroll-behavior:auto}}
.mr-foods{border:0;padding:0;margin:0;min-width:0;display:grid;grid-template-columns:1fr 1fr;gap:8px}.mr-foods legend{padding:0;margin-bottom:10px}.mr-app .mr-food{margin:0;position:relative;display:flex;align-items:center;gap:6px;padding:11px 9px;border:1px solid #ebdce7;background:#fff9fc;border-radius:16px;cursor:pointer;font-size:12px;min-height:72px}.mr-food input{accent-color:#98577e;flex-shrink:0;width:16px;height:16px}.mr-food span{display:block}.mr-food b{display:block;font-size:25px;font-weight:400;line-height:1.3;margin-bottom:4px}.mr-food:has(input:checked){background:#f6dfed;border-color:#b6799c;box-shadow:0 0 0 1px #b6799c}.mr-app .mr-contract-row{display:grid;grid-template-columns:65px minmax(0,1fr) 32px;gap:8px;align-items:end;margin-bottom:10px}.mr-contract-row label{min-width:0;margin:0;font-size:12px}.mr-app select{display:block;width:100%;min-width:0;border:1px solid #e1ced9;border-radius:12px;background:#fffafd;padding:10px 7px;font:inherit;color:#533b49;min-height:45px;margin-top:5px}.mr-app select:focus-visible{outline:3px solid #9578b4;outline-offset:3px}.mr-app [data-mr-remove-contract]{padding:0;background:#f7eaf0;font-size:22px;min-height:45px}.mr-app .mr-add-contract{width:100%;background:#eee5f8;border:1px dashed #ba9bc9;margin-top:8px}.mr-app .mr-add-contract:disabled{opacity:.6;cursor:default}@media(max-width:350px){.mr-app .mr-contract-row{grid-template-columns:56px minmax(0,1fr) 28px;gap:5px}}

.mr-autosave{padding:14px 12px;border:1px solid #dce9df;background:#eff7f0;border-radius:16px;font-size:12px;text-align:center;margin:16px 0}.mr-autosave[data-state=error]{background:#fff0f0;border-color:#e2abab;color:#7f3444}.mr-autosave button{margin:8px auto 0}

.mr-activity-row{padding:0 0 14px;margin-bottom:14px;border-bottom:1px solid #efdee7}.mr-app [data-mr-remove-activity]{font-size:11px;padding:5px 10px;min-height:32px;background:#f7eaf0;margin-top:4px}.mr-activity-row label{min-width:0}.mr-activity-row .mr-grid{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr)}

.mr-date{display:block}.mr-date label{display:block;width:100%}.mr-date [data-mr-date-status]:empty{display:none}.mr-date [data-mr-date-status]{display:block;margin-top:8px}

.mr-app .mr-coffee-choice{display:flex;gap:12px;align-items:center;padding:14px;border:1px solid #ebdce7;border-radius:16px;background:#fff9fc;cursor:pointer;margin-bottom:0}.mr-coffee-choice input{accent-color:#98577e;width:19px;height:19px;flex-shrink:0}.mr-coffee-choice b{font-size:32px;font-weight:400;vertical-align:middle;margin-right:8px}.mr-coffee-choice:has(input:checked){background:#f6dfed;border-color:#b6799c}

.mr-header h2{overflow-wrap:anywhere}

.mr-coffee-choice input[type=checkbox]{appearance:none;-webkit-appearance:none;display:inline-block;width:16px;height:16px;min-width:16px;min-height:16px;padding:0;margin:0;border:1px solid #858585;border-radius:50%;background:#fff;cursor:pointer}.mr-coffee-choice input[type=checkbox]:checked{border-color:#98577e;background:radial-gradient(circle,#98577e 0 4px,transparent 4.5px),#fff}.mr-coffee-choice input[type=checkbox]:focus-visible{outline:3px solid #9578b4;outline-offset:3px}

.mr-picker{position:relative;width:100%;margin-top:5px}.mr-app .mr-picker-trigger{display:block;width:100%;text-align:left;background:#fffafd;border:1px solid #e1ced9;color:#624657;padding:12px;border-radius:12px;font-size:15px;min-height:48px}.mr-picker-popup{position:absolute;top:calc(100% + 8px);left:0;width:100%;padding:12px;background:#fff9fc;border:1px solid #e9cbdc;border-radius:22px;box-shadow:0 12px 36px #79536e29;z-index:50;max-height:70vh;overflow:auto}.mr-picker-head{display:grid;grid-template-columns:28px minmax(0,1.4fr) minmax(0,1fr) 28px;gap:4px;align-items:center}.mr-app .mr-picker-head button{padding:0;min-height:36px;border-radius:11px;background:#f2e6f5;font-size:23px}.mr-app .mr-picker-head select{margin:0;padding:6px 2px;border:0;background:transparent;font-size:12px;font-weight:600;min-height:36px}.mr-app .mr-picker-grid{table-layout:fixed;width:100%;border-collapse:separate;border-spacing:3px;margin:8px 0;border:0;background:transparent}.mr-app .mr-picker-grid th,.mr-app .mr-picker-grid td{padding:0;text-align:center;border:0;background:transparent}.mr-app .mr-picker-grid th{font-size:10px;color:#8d6e83;height:26px;font-weight:600}.mr-app .mr-picker-grid button{padding:0;width:100%;min-height:32px;height:32px;font-size:12px;border-radius:10px;background:#f9edf4;color:#624657}.mr-app .mr-picker-grid button[aria-pressed=true]{background:#995d82;color:#fff;font-weight:700;box-shadow:0 3px 8px #89527126}.mr-app .mr-picker-grid .mr-picker-muted{background:transparent;color:#aa95a1}.mr-app .mr-picker-grid button[aria-current=date]{border:1px solid #b584a5}.mr-picker-foot{display:flex;justify-content:space-between;gap:8px;margin-top:8px}.mr-app .mr-picker-foot button{font-size:12px;min-height:36px;padding:6px 12px;background:#eee6f6}.mr-app .mr-picker-foot button:first-child{background:#e8f3ec}@media(max-width:350px){.mr-picker-popup{padding:8px}.mr-picker-head{grid-template-columns:23px minmax(0,1.4fr) minmax(0,1fr) 23px}.mr-app .mr-picker-grid{border-spacing:2px}.mr-app .mr-picker-grid button{height:30px;min-height:30px}}

.mr-daily-phrase{background:linear-gradient(135deg,#f9e9f2,#f0eafa);text-align:center;padding:24px!important}.mr-daily-phrase p{margin:0;font-size:17px;line-height:1.65;color:#75516c;font-weight:600}

.mr-reading [data-mr-book-title]{margin-top:20px}.mr-reading [data-mr-book-title][hidden]{display:none}

.mr-watching [data-mr-watch-title]{margin-top:20px}.mr-watching [data-mr-watch-title][hidden]{display:none}

.mr-daily-phrase{position:relative;transform-origin:center;isolation:isolate}
.mr-phrase-sparkles{position:absolute;width:44px;height:35px;opacity:0;pointer-events:none;color:#c49b53;line-height:1;z-index:1}
.mr-phrase-sparkles.is-top{right:10px;top:6px}.mr-phrase-sparkles.is-bottom{left:10px;bottom:6px}
.mr-phrase-sparkles b{position:absolute;font-weight:400;font-size:22px;left:13px;top:6px}.mr-phrase-sparkles b:nth-child(2){font-size:12px;left:0;top:0;color:#bb7fa8}.mr-phrase-sparkles b:nth-child(3){font-size:13px;left:34px;top:22px;color:#a98abc}
.mr-daily-phrase.is-phrase-highlight{animation:mr-phrase-pulse 1.2s ease-in-out both}
.mr-daily-phrase[data-mr-phrase-seen] .mr-phrase-sparkles{animation:mr-phrase-stars 2.8s ease-in-out infinite}
.mr-daily-phrase[data-mr-phrase-seen] .mr-phrase-sparkles.is-bottom{animation-delay:.35s}
@keyframes mr-phrase-pulse{0%,100%{transform:scale(1)}45%{transform:scale(1.035);box-shadow:0 8px 26px #b888ae26}}
@keyframes mr-phrase-stars{0%,100%{opacity:.5;transform:scale(.85) rotate(-4deg)}35%,65%{opacity:1;transform:scale(1) rotate(0deg)}50%{opacity:.7;transform:scale(.92) rotate(4deg)}}

.mr-time-picker{display:block;width:100%}.mr-app .mr-time-trigger{width:100%;min-height:50px;text-align:left;background:#fff9fd;border:1px solid #e8ccdf;border-radius:16px;padding:14px 16px;color:#72516b;font:inherit;font-size:16px;font-weight:600;cursor:pointer}
.mr-app .mr-time-trigger[aria-expanded=true]{outline:3px solid #d9c7ea;outline-offset:2px}
.mr-time-popup{position:fixed;z-index:1000;background:linear-gradient(145deg,#fffafd,#f6effb);border:1px solid #e7cddd;border-radius:24px;padding:16px;box-shadow:0 12px 34px #815c7a29;max-height:calc(100dvh - 16px);overflow:auto;color:#72516b}
.mr-time-popup[hidden]{display:none}.mr-time-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.mr-time-head strong{font-size:14px;line-height:1.4}.mr-app .mr-time-close{padding:0;width:30px;height:30px;min-height:30px;min-width:30px;border:0;border-radius:50%;background:#efe4f5;color:#80567b;font-size:22px;cursor:pointer}
.mr-time-preview{text-align:center;font-size:27px;font-weight:700;letter-spacing:3px;padding:10px;color:#986088}.mr-time-columns{display:grid;grid-template-columns:1fr 1fr;gap:12px}.mr-time-columns>div>strong{display:block;text-align:center;font-size:13px;padding:0 0 8px}.mr-time-list{position:relative;max-height:176px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#dcb8d2 #fbf5fc;padding:3px;border-radius:14px;background:#fffbfe}
.mr-app .mr-time-list button{display:block;width:100%;min-height:38px;padding:8px;margin:0 0 3px;border:0;border-radius:11px;background:#f6edf6;color:#76526d;font:inherit;cursor:pointer}.mr-app .mr-time-list button[aria-pressed=true]{background:#ae709c;color:white;font-weight:700}.mr-app .mr-time-list button:focus-visible{outline:3px solid #aa8bc1;outline-offset:-3px}
.mr-time-actions{display:flex;justify-content:space-between;gap:12px;margin-top:14px}.mr-app .mr-time-actions button{padding:10px 17px;border:0;border-radius:13px;background:#eee3f5;color:#795571;font:inherit;cursor:pointer}.mr-app .mr-time-actions .mr-time-confirm{background:#efd0e3}.mr-app .mr-time-confirm:disabled{opacity:.45;cursor:default}

.mr-app .mr-time-close{display:flex;align-items:center;justify-content:center;flex:0 0 30px;line-height:1;padding:0;font-family:Arial,sans-serif;font-weight:400}

.mr-app .mr-time-list button:disabled{opacity:.35;cursor:default}.mr-activity-row .mr-time-trigger{min-width:0;padding-left:12px;padding-right:8px}

.mr-time-popup[data-mr-time-kind=duration] .mr-time-columns{grid-template-columns:1fr}

.mr-activity-picker{display:block}.mr-app .mr-activity-trigger{width:100%;min-width:0;text-align:left;padding:14px 12px;min-height:50px;border:1px solid #e8ccdf;border-radius:16px;background:#fff9fd;font:inherit;font-weight:600;color:#72516b;cursor:pointer}
.mr-app .mr-activity-trigger[aria-expanded=true]{outline:3px solid #d9c7ea;outline-offset:2px}.mr-activity-popup{position:fixed;z-index:1000;max-height:calc(100dvh - 16px);overflow-y:auto;padding:16px;border:1px solid #e7cddd;border-radius:24px;background:linear-gradient(145deg,#fffafd,#f6effb);box-shadow:0 12px 34px #815c7a29;color:#72516b}.mr-activity-popup[hidden]{display:none}
.mr-activity-options{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:14px}.mr-app .mr-activity-options button{display:flex;align-items:center;gap:8px;text-align:left;min-height:58px;padding:10px 9px;border:1px solid #edd8e8;border-radius:16px;background:#fff9fd;color:#76526d;font-size:13px;line-height:1.3}.mr-activity-icon{font-size:24px;flex-shrink:0}.mr-app .mr-activity-options button[aria-pressed=true]{background:#efd8e9;border-color:#b77fa5;box-shadow:0 0 0 1px #b77fa5}.mr-app .mr-activity-options button:hover{background:#f3e5f4}.mr-app .mr-activity-clear{display:block;margin:12px auto 0;padding:8px 14px;border-radius:12px;background:#eee3f5;font-size:13px;min-height:38px}

/* Phone-first touch targets and native finger scrolling. */
@media(pointer:coarse){
 .mr-app button,.mr-app a{touch-action:manipulation}
 .mr-time-popup,.mr-activity-popup{overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
 .mr-time-list{touch-action:pan-y;-webkit-overflow-scrolling:touch;overscroll-behavior-y:contain}
 .mr-app .mr-time-list button{min-height:48px}
 .mr-app .mr-time-close{width:44px;height:44px;min-width:44px;min-height:44px;flex-basis:44px}
 .mr-app .mr-time-actions button,.mr-app .mr-activity-clear{min-height:44px}
 .mr-app [data-mr-remove-activity]{min-height:44px;padding:9px 12px}
 .mr-app .mr-contract-row{grid-template-columns:65px minmax(0,1fr) 44px}
 .mr-app [data-mr-remove-contract]{min-width:44px;min-height:44px}
 .mr-app .mr-picker-grid button{height:44px;min-height:44px}
 .mr-app .mr-picker-head button,.mr-app .mr-picker-head select,.mr-app .mr-picker-foot button{min-height:44px}
 .mr-app input:not([type=checkbox]):not([type=radio]),.mr-app select,.mr-app textarea{font-size:16px}
}

.mr-full-moon{display:inline-block;width:1.25em;height:1.25em;vertical-align:-.22em;background:none}

.mr-wake-sun{display:inline-block;width:1.25em;height:1.25em;vertical-align:-.22em;background:none}

.mr-self-care-block + .mr-self-care-block{margin-top:26px;padding-top:26px;border-top:1px solid #ead4e4}
.mr-phrase-toast{position:fixed;z-index:90;left:50%;bottom:max(12px,env(safe-area-inset-bottom));width:calc(100% - 24px);max-width:420px;pointer-events:none;transform:translate(-50%,calc(100% + 40px));transition:transform .6s cubic-bezier(.22,.75,.25,1)}
.mr-phrase-toast.is-visible{transform:translate(-50%,0)}.mr-phrase-toast .mr-daily-phrase{margin:0;padding:25px 30px!important;box-shadow:0 8px 32px #805c7a30}.mr-phrase-toast .mr-daily-phrase p{font-size:16px}

.mr-agenda-tabs{margin-top:18px}.mr-agenda-tabs button{font-size:12px;line-height:1.4;min-height:52px}.mr-agenda-month-head{display:grid;grid-template-columns:44px 1fr 44px;align-items:center;gap:6px}.mr-agenda-month-head h3{text-align:center;text-transform:capitalize;font-size:17px;margin:0}.mr-app .mr-agenda-month-head button{padding:0;min-height:44px;font-size:26px}.mr-agenda-month-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px;margin-top:12px}.mr-agenda-weekday{text-align:center;font-size:11px;padding:6px 0}.mr-app .mr-agenda-month-grid button{position:relative;min-width:0;padding:7px 0 13px;min-height:44px;border-radius:12px;font-size:13px;background:#f7eaf3}.mr-app .mr-agenda-month-grid button[aria-pressed=true]{background:#a36690;color:white}.mr-agenda-month-grid button[aria-current=date]{box-shadow:inset 0 0 0 1px #a36690}.mr-agenda-month-grid small{position:absolute;bottom:0;left:0;right:0;font-size:17px;line-height:1}.mr-app .mr-agenda-add{width:100%;margin:12px 0;border:1px dashed #b695c5;background:#eee4f6}.mr-appointment{padding:14px;border:1px solid #ead0e3;border-radius:20px;background:#fff9fc;margin-top:12px}.mr-appointment h4{margin:4px 0 8px;font-size:16px}.mr-appointment p{margin:4px 0;overflow-wrap:anywhere}.mr-appointment-time{font-weight:700;color:#a36690}.mr-appointment-notes{white-space:pre-wrap;font-size:13px}.mr-agenda-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}.mr-app .mr-agenda-actions button{min-height:44px;font-size:13px;background:#eee3f5}.mr-agenda-status{font-size:13px;overflow-wrap:anywhere}.mr-agenda-editor input,.mr-agenda-editor textarea{font-size:16px!important}.mr-agenda-editor .mr-picker-popup{z-index:60}

.mr-report-nav{display:grid;grid-template-columns:44px 1fr 44px;align-items:center;gap:8px;margin-bottom:12px}.mr-report-nav h3{text-align:center;text-transform:capitalize;font-size:18px;margin:0}.mr-app .mr-report-nav button{padding:0;font-size:26px;min-height:44px}.mr-report-nav button:disabled{opacity:.3;cursor:default}.mr-report-metrics{display:grid;grid-template-columns:1fr 1fr;gap:10px}.mr-app .mr-report-stat{display:flex;flex-direction:column;justify-content:center;gap:5px;text-align:center;min-height:100px;min-width:0;padding:14px 10px;border:0;border-radius:22px;background:#f1e9fa;color:#72516b}.mr-report-stat:nth-child(even){background:#e7f2ee}.mr-report-stat strong{font-size:22px;line-height:1.4;overflow-wrap:anywhere}.mr-report-stat span{font-size:13px}.mr-report-stat small{font-size:11px;color:#886981}.mr-report-stat.is-salary{grid-column:1/-1;background:#f6e5ef}.mr-report-goal{padding:15px 0;border-top:1px solid #ecd9e6}.mr-report-goal h4{margin:0 0 8px}.mr-report-goal progress{display:block;width:100%;height:14px;margin:10px 0;accent-color:#b47ba5;border:0;border-radius:10px;overflow:hidden}.mr-report-goal progress::-webkit-progress-bar{background:#f1e6f3}.mr-report-goal progress::-webkit-progress-value{background:#b47ba5}.mr-report-goal summary{cursor:pointer;font-size:13px}.mr-report-modal{position:fixed;z-index:1300;inset:0;background:#50374670;display:flex;align-items:center;justify-content:center;padding:16px;overscroll-behavior:contain}.mr-report-modal[hidden]{display:none}.mr-report-dialog{width:100%;max-width:430px;max-height:calc(100dvh - 32px);overflow:auto;background:#fff8fc;padding:20px;border:1px solid #ead0e3;border-radius:26px;box-shadow:0 15px 55px #5a3f5740}.mr-report-dialog h3{margin:0}.mr-report-contract-row{display:flex;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid #ecd7e6}.mr-report-contract-row span{overflow-wrap:anywhere}.mr-goal-settings{border-top:1px solid #e9d2e1;padding:16px 0}.mr-goal-settings summary{font-weight:700;cursor:pointer}.mr-goal-setting{padding:10px 0;border-bottom:1px solid #f0e0eb}.mr-goal-setting>label{display:flex;align-items:center;gap:10px}.mr-goal-setting input[type=checkbox]{width:20px;height:20px;accent-color:#a3668e}.mr-goal-setting .mr-grid label{font-size:12px}

.mr-app button{-webkit-tap-highlight-color:transparent;user-select:none;-webkit-user-select:none}

/* Calendar shortcut, centered below month navigation. */

.mr-app .mr-agenda-month-grid button[data-cycle-phase=start],.mr-app .mr-agenda-month-grid button[data-cycle-phase=period]{background:#f0b2d1;color:#65394e}
.mr-app .mr-agenda-month-grid button[data-cycle-phase=pre]{background:linear-gradient(145deg,#fff9fc,rgba(219,139,178,var(--mr-pre-alpha)));color:#65394e}
.mr-app .mr-agenda-month-grid button[data-cycle-phase=ovulation]{background:#dceee9;color:#375e56}
.mr-app .mr-agenda-month-grid button[data-cycle-phase][aria-pressed=true]{outline:2px solid #95618d;outline-offset:-2px;box-shadow:inset 0 0 0 3px #fff}
.mr-cycle-symbol{display:block;font-size:12px;line-height:14px;height:14px}
.mr-app .mr-agenda-month-grid button[data-cycle-phase=start],.mr-app .mr-agenda-month-grid button[data-cycle-phase=period],.mr-app .mr-agenda-month-grid button[data-cycle-phase=ovulation]{padding-top:3px;padding-bottom:8px}
.mr-cycle-legend{display:flex;flex-wrap:wrap;gap:8px 12px;margin-top:16px;font-size:11px;line-height:1.6}.mr-cycle-legend>span{display:inline-flex;align-items:center;gap:5px}
.mr-cycle-swatch{display:inline-block;flex-shrink:0;width:12px;height:12px;border-radius:4px}.mr-cycle-swatch-start{background:#f0b2d1}.mr-cycle-swatch-pre{background:linear-gradient(90deg,#fcf3f8,#e9bad3)}.mr-cycle-swatch-ovu{background:#dceee9}
.mr-cycle-note{font-size:11px;line-height:1.6;color:#80697a;margin:10px 0;overflow-wrap:anywhere}

/* A single progressive ribbon across adjacent pre-cycle dates. */
.mr-app .mr-agenda-month-grid button[data-cycle-phase=pre]{background:transparent;isolation:isolate;border-radius:0}
.mr-app .mr-agenda-month-grid button[data-cycle-phase=pre]::before{content:"";position:absolute;inset:0 -1.5px;z-index:-1;background:linear-gradient(90deg,rgba(219,139,178,var(--mr-pre-from)),rgba(219,139,178,var(--mr-pre-to)));pointer-events:none}
.mr-app .mr-agenda-month-grid button[data-cycle-phase=pre][data-band-start=true]::before{left:0;border-top-left-radius:12px;border-bottom-left-radius:12px}
.mr-app .mr-agenda-month-grid button[data-cycle-phase=pre][data-band-end=true]::before{right:0;border-top-right-radius:12px;border-bottom-right-radius:12px}
.mr-app .mr-agenda-month-grid button[data-cycle-phase=pre][aria-pressed=true]{border-radius:12px}

.mr-agenda-overlay{position:fixed;inset:0;z-index:900;background:#59384f66;display:flex;align-items:center;justify-content:center;padding:16px;overscroll-behavior:contain}
.mr-agenda-overlay[hidden]{display:none}
.mr-app .mr-agenda-overlay .mr-agenda-editor{width:100%;max-width:440px;max-height:calc(100dvh - 32px);overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;margin:0;padding:20px;background:#fff9fc;box-shadow:0 18px 65px #57304c40;box-sizing:border-box}
.mr-agenda-modal-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px}
.mr-agenda-modal-head h3{margin:0;font-size:19px}
.mr-app .mr-agenda-modal-head .mr-time-close{display:grid;place-items:center;flex-shrink:0;width:44px;height:44px;min-height:44px;line-height:1;font-size:28px}
.mr-agenda-overlay .mr-agenda-actions{margin-top:16px}
@media(max-width:350px){.mr-agenda-overlay{padding:10px}.mr-app .mr-agenda-overlay .mr-agenda-editor{padding:16px;max-height:calc(100dvh - 20px)}}

.mr-app .mr-cycle-action{display:flex;align-items:center;gap:12px;width:100%;min-height:64px;text-align:left;background:#fff8fc;border:1px solid #e7cadf;padding:16px;border-radius:20px;font-weight:600;font-size:15px;color:#69495f}
.mr-app .mr-agenda-month-grid button[data-cycle-phase=end],.mr-app .mr-agenda-month-grid button[data-cycle-phase=both]{background:#e5d8f2;color:#604676}
.mr-app .mr-agenda-month-grid button[data-cycle-phase=predicted]{background:#fff5fa;color:#8f5075;border:1px dashed #bf79a2}
.mr-cycle-summary{padding:12px;border-radius:16px;background:#f5edf8;font-size:12px;line-height:1.6;overflow-wrap:anywhere}

.mr-app .mr-cycle-correct{min-height:44px;padding:8px 12px;font-size:12px;background:#f0e5f4;margin:4px 0}.mr-cycle [hidden]{display:none}

.mr-app .mr-contract-row{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr) 44px;align-items:end;gap:8px;padding:12px 0;margin-bottom:8px;border-bottom:1px solid #f0dfe9}
.mr-contract-row .mr-activity-trigger{min-height:52px;font-size:13px;padding:12px 9px;overflow-wrap:anywhere;white-space:normal;line-height:1.4}
.mr-contract-count{display:inline-grid;place-items:center;min-width:28px;min-height:28px;padding:2px 8px;margin-left:6px;border-radius:999px;background:#eee2f6;color:#825b8b;font-size:14px;vertical-align:middle}
.mr-contract-legacy{grid-column:1/-1;color:#80697a;font-size:11px}
@media(max-width:350px){.mr-app .mr-contract-row{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr) 44px;gap:5px}.mr-contract-row .mr-activity-trigger{font-size:12px;padding:10px 6px}}

.mr-extra-row{display:grid;grid-template-columns:minmax(0,1fr) 44px;gap:10px;align-items:end;margin-bottom:14px}.mr-extra-row label{min-width:0;margin:0}.mr-app [data-mr-remove-extra]{padding:0;min-width:44px;min-height:48px;font-size:24px;background:#f5e6ef}.mr-extra-row input{min-height:48px}

.mr-visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.mr-activity-question{font-weight:600;font-size:13px;line-height:1.5;margin:0 0 8px}
.mr-activity-row .mr-grid{align-items:start;gap:10px}
.mr-activity-row .mr-grid>label{margin:0}
.mr-activity-row .mr-activity-picker,.mr-activity-row .mr-time-picker{display:block;margin:0}
.mr-app .mr-activity-row .mr-activity-trigger,.mr-app .mr-activity-row .mr-time-trigger{min-height:56px;height:56px;margin:0;font-size:14px;box-sizing:border-box;width:100%}
.mr-activity-popup[data-mr-contract-list] .mr-activity-options{grid-template-columns:1fr;max-height:min(45dvh,340px);overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:2px}
.mr-activity-popup[data-mr-contract-list] .mr-activity-options button{width:100%;min-height:48px}

.mr-cycle-action::before{content:"";display:block;flex:0 0 16px;width:16px;height:16px;border:1px solid #969696;border-radius:50%;background:#fff;box-sizing:border-box}.mr-cycle-action:active::before{border-color:#a05a87;background:#a05a87;box-shadow:inset 0 0 0 3px #fff}

.mr-auth-app{max-width:480px}.mr-auth-card h3{text-align:center}.mr-auth-card form{display:grid;gap:16px}.mr-auth-card label{margin:0}.mr-auth-card input[type=text],.mr-auth-card input[type=password]{width:100%;box-sizing:border-box;min-height:50px;font-size:16px}.mr-app .mr-auth-remember{display:flex;align-items:center;gap:10px;font-size:14px;min-height:44px}.mr-auth-remember input{width:18px;height:18px;accent-color:#a05a87;margin:0}.mr-app .mr-auth-submit{width:100%;min-height:50px;margin:0}.mr-auth-links{text-align:center;margin-top:18px}.mr-auth-links a{display:inline-block;padding:10px;color:#86577b}.mr-auth-notice{background:#edf6ef;padding:12px;border-radius:16px;font-size:14px;line-height:1.6}.mr-auth-notice.is-error{background:#f9e6ec;color:#923b58}.mr-auth-app .mr-header h2{font-size:30px}.mr-auth-app .mr-mascot{margin:6px auto 12px}

.mr-apk-download{display:block;margin-top:10px}.mr-app .mr-apk-download a{display:inline-block;padding:10px 18px;border:1px solid #e4cddd;border-radius:999px;background:#f3e5f0;color:#805474;text-decoration:none;min-height:44px;box-sizing:border-box}.mr-app .mr-apk-download a:hover{background:#ead7e7}.mr-app .mr-apk-download a:focus-visible{outline:2px solid #805474;outline-offset:3px}

.mr-auth-app .mr-header{padding-bottom:12px}.mr-auth-app .mr-header h2{margin-bottom:12px}

.mr-energy-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.mr-energy-heading h4{margin:0;min-width:0}.mr-energy-heading>strong{color:#885179;font-size:20px;white-space:nowrap}.mr-energy-bar{height:25px;padding:4px;border-radius:999px;background:#eee3ef;box-shadow:inset 0 2px 5px #6d427820;border:1px solid #e1cfe1;overflow:hidden}.mr-energy-fill{display:block;height:100%;min-width:0;border-radius:999px;background:linear-gradient(90deg,#d9a5d5,#af78bb 55%,#865593);box-shadow:inset 0 2px 0 #ffffff65;transition:width .5s ease}.mr-report-goal[data-report-goal=physical] .mr-energy-fill{background:linear-gradient(90deg,#aedccd,#61af99)}.mr-report-goal[data-report-goal=leisure] .mr-energy-fill{background:linear-gradient(90deg,#f2d197,#dc9d61)}.mr-report-goal[data-report-goal=emotional] .mr-energy-fill{background:linear-gradient(90deg,#f1b4ce,#ca7ca9)}.mr-energy-badges{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:16px 0}.mr-energy-badge{text-align:center;padding:10px 5px;border-radius:18px;border:1px dashed #decfdf;background:#faf6fb;color:#877484;min-width:0}.mr-energy-icon{display:grid;place-items:center;width:46px;height:46px;border-radius:50%;margin:0 auto 8px;background:#ebe4ee;font-size:27px;filter:grayscale(1);opacity:.55}.mr-energy-icon img{width:34px;height:34px;object-fit:contain}.mr-energy-badge strong,.mr-energy-badge small{display:block;overflow-wrap:anywhere;line-height:1.4}.mr-energy-badge strong{font-size:12px}.mr-energy-badge small{font-size:10px;margin-top:5px}.mr-energy-badge.is-unlocked{border:1px solid #cba0c6;background:#f4e4f1;color:#704568;box-shadow:0 3px 10px #96578714}.is-unlocked .mr-energy-icon{filter:none;opacity:1;background:#fff5fc;box-shadow:0 0 0 3px #e8cbe4}.mr-energy-badge.is-unlocked small{color:#49755f}@media(prefers-reduced-motion:reduce){.mr-energy-fill{transition:none}}

.mr-native-state{padding:12px 14px;background:#f2e9f6;border-radius:16px;font-size:13px;line-height:1.6}.mr-native-rows>div{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px 0;border-bottom:1px solid #efdee7}.mr-native-rows>div:last-child{border-bottom:0}.mr-native-rows strong,.mr-native-rows small{display:block}.mr-native-rows strong{font-size:14px}.mr-native-rows small{font-size:12px;line-height:1.5;margin-top:4px}.mr-app .mr-native-rows button{flex:0 0 auto;border:1px solid #e0c6df;background:#f1e2ef;color:#794e71;padding:10px 14px;border-radius:16px;min-height:44px;font-size:12px}.mr-app .mr-native-rows button:disabled{opacity:.55;cursor:default}@media(max-width:360px){.mr-native-rows>div{flex-wrap:wrap}.mr-native-rows>div>span{width:100%}}

.mr-app .mr-report-month-card{padding:14px 16px}.mr-report-nav{grid-template-columns:44px minmax(0,auto) 44px;justify-content:center;gap:10px;width:fit-content;max-width:100%;margin:0 auto}.mr-app .mr-report-nav h3{font-size:17px;line-height:1.3;margin:0}.mr-app .mr-report-nav button{width:44px;height:44px;min-height:44px;border-radius:16px;font-size:24px}.mr-report-month-card [data-mr-report-status]:empty{display:none}.mr-report-month-card [data-mr-report-status]:not(:empty){margin:10px 0 0}

.mr-native-reminder-open .mr-mascot,.mr-native-reminder-open .mr-mascot-cameo{visibility:hidden!important}

.mr-native-reminder-open .mr-phrase-toast{visibility:hidden!important}
