html.week-is-open{overflow:hidden}
.week-prompt[hidden]{display:none!important}
.week-prompt,.week-profile{border:1px solid #bed0c7;background:#eef5f0;color:#173f36;border-radius:8px;box-shadow:0 3px 0 #d9e5df,0 8px 18px #173f360a}
.week-prompt{display:flex;align-items:center;margin:14px 0}
.week-prompt button,.week-profile{font:inherit;letter-spacing:0;text-align:left}
.week-prompt-open,.week-profile{display:flex;align-items:center;gap:12px;padding:16px;width:100%;min-width:0}
.week-prompt-open{background:none;border:0;color:inherit;box-shadow:none;margin:0}
.week-prompt-open span,.week-profile span{flex:1;min-width:0}
.week-prompt b,.week-profile b{display:block;font-size:16px;line-height:1.3}
.week-prompt small,.week-profile small{display:block;font-size:12px;line-height:1.5;color:#4a625a;margin-top:4px}
.week-profile{margin:14px 0}
.week-prompt svg,.week-profile svg{width:22px;height:22px;flex-shrink:0}
.week-prompt .week-dismiss{width:44px;height:44px;flex-shrink:0;background:none;border:0;color:#426157;padding:12px;box-shadow:none;margin:0 4px 0 0}
dialog.week-dialog{padding:0;border:0;border-radius:8px;width:min(620px,calc(100% - 24px));max-height:calc(100dvh - 32px);background:#f4f6f3;color:#233c35;box-shadow:0 24px 80px #092b3155;overflow:auto;overscroll-behavior:contain}
.week-dialog::backdrop{background:#0c242bcc;backdrop-filter:blur(5px)}
.week-dialog *{box-sizing:border-box;letter-spacing:0}
.week-dialog .week-shell{padding:0 24px 20px;font-family:inherit}
.week-dialog .week-header{display:flex;align-items:center;gap:9px;padding:16px 0 10px;color:#486057;font-size:12px}
.week-header img{width:28px;height:28px;object-fit:contain}
.week-dialog button{font:inherit;cursor:pointer}
.week-dialog .week-close{margin-left:auto;width:44px;height:44px;display:grid;place-items:center;background:#e5ece6;color:#28483e;border:1px solid #c9d6cc;border-radius:50%;padding:10px;box-shadow:none}
.week-heading small{color:#48695b;font-size:12px}
.week-dialog .week-heading h2{font-size:30px;line-height:1.15;margin:5px 0 8px;color:#153f32}
.week-heading p{font-size:14px;color:#50625b;margin:0 0 18px}
.week-dialog .week-switch{display:flex;padding:4px;background:#e3eae4;border-radius:8px;gap:4px;margin:0 0 16px}
.week-dialog .week-switch button{flex:1;border:0;background:transparent;color:#365446;padding:10px 6px;border-radius:5px;font-size:14px;box-shadow:none;margin:0}
.week-dialog .week-switch button[aria-pressed=true]{background:#204f3f;color:#fff;box-shadow:0 2px 3px #183f3322}
.week-status{display:flex;justify-content:space-between;gap:8px;font-size:12px;color:#486257;margin-bottom:12px}
.week-status span{color:#5f6c66}
.week-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:22px}
.week-stats>div{border:1px solid #ccd8cd;border-radius:8px;background:#e4eee5;padding:14px 8px;box-shadow:0 3px 0 #d0ded2}
.week-stats>div:nth-child(2){background:#e5edf2;border-color:#c9d9e1;box-shadow:0 3px 0 #d4e0e6}
.week-stats>div:nth-child(3){background:#f3e6de;border-color:#e0cfc1;box-shadow:0 3px 0 #e6d7cb}
.week-stats strong{display:block;font-size:26px;line-height:1.2;color:#193f34;font-variant-numeric:tabular-nums}
.week-stats strong small{font-size:12px;font-weight:400;color:#4b6358}
.week-stats span{display:block;font-size:11px;line-height:1.35;margin-top:6px;color:#3c5549}
.week-dialog .week-section{padding:0 0 20px;margin:0 0 20px;border-bottom:1px solid #d6dfd7}
.week-dialog h3{font-size:18px;line-height:1.35;margin:0 0 12px;color:#203e32}
.week-dialog p{font-size:14px;line-height:1.55;margin:10px 0}
.week-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;margin:16px 0}
.week-day{text-align:center;min-width:0}
.week-day>span{font-size:11px;color:#51675b}
.week-day b{display:grid;place-items:center;aspect-ratio:1;margin-top:7px;border:1px solid #d0dbd1;border-radius:50%;background:#e7ece6;color:#597062}
.week-day svg{width:18px;height:18px}
.week-day[class*=is-] b{background:#d5e8e3;border-color:#adcac3;color:#26574a}
.week-day.is-energy b{background:#e6e5c4}.week-day.is-sad b,.week-day.is-tired b{background:#dce6f0;color:#2f506c;border-color:#b9cbdc}
.week-moods{list-style:none;padding:0;margin:12px 0 0;display:grid;gap:7px}
.week-moods li{display:flex;justify-content:space-between;gap:12px;font-size:12px;line-height:1.5}
.week-moods time{color:#607269;flex-shrink:0}.week-moods span{text-align:right}
.week-practices{display:grid;gap:9px}
.week-practices>span{display:flex;gap:10px;align-items:center;font-size:14px;line-height:1.4}
.week-practices svg{width:18px;height:18px;flex-shrink:0;color:#39765b}
.week-dialog .week-note{font-size:11px;color:#5b6b62;line-height:1.5}
.week-reflection{border-left:3px solid #ae7661;padding:2px 0 2px 15px;margin:0 0 20px}
.week-reflection small{color:#82553f;font-size:12px;display:block;margin-bottom:8px}
.week-next{display:grid;gap:8px}
.week-dialog .week-next button{display:flex;justify-content:center;align-items:center;gap:9px;border:1px solid #c4d4c8;background:#e7ede7;color:#254e3d;min-height:46px;padding:12px;border-radius:8px;box-shadow:0 3px 0 #d6e1d7;margin:0;font-size:14px}
.week-dialog .week-next button:first-child{background:#20523e;color:#fff;border-color:#20523e;box-shadow:0 3px 0 #123e2c}
.week-next svg{width:18px;height:18px}
.week-empty{padding:22px 0;text-align:left}.week-empty>svg{color:#46765b;width:36px;height:36px;margin-bottom:14px}
.week-dialog .week-footnote{margin-top:18px}
.week-dialog button:focus-visible,.week-profile:focus-visible,.week-prompt button:focus-visible{outline:3px solid #407a9b;outline-offset:3px}
@media(max-width:480px){dialog.week-dialog{width:100%;max-width:100%;height:100dvh;max-height:100dvh;border-radius:0;margin:0}.week-dialog .week-shell{padding:env(safe-area-inset-top,0px) 18px max(20px,env(safe-area-inset-bottom,0px))}.week-dialog .week-heading h2{font-size:28px}.week-stats strong{font-size:24px}.week-prompt-open{padding:14px 10px;gap:9px}}
@media(prefers-reduced-motion:reduce){.week-dialog *{animation:none!important;transition:none!important}}
