:root{--page:#f8f9f6;--paper:#fff;--ink:#24382f;--muted:#67756d;--green:#244f42;--green-hover:#1a4035;--lime:#e4edbd;--sage:#edf1e8;--line:#dfe5dc;--error:#9f3d32;--radius:24px;--font:"Noto Sans JP Variable", -apple-system, BlinkMacSystemFont, "Hiragino Kaku Gothic ProN", "Yu Gothic", "Meiryo", sans-serif}*{box-sizing:border-box}html{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;-webkit-text-size-adjust:100%}body{color:var(--ink);font-family:var(--font);-webkit-font-smoothing:antialiased;background:#e9ede7;margin:0;font-size:15px;line-height:1.7}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent;touch-action:manipulation}button{cursor:pointer}a{color:inherit;text-decoration:none}button{color:inherit}button:disabled{cursor:default}button:focus-visible,a:focus-visible,input:focus-visible{outline-offset:4px;outline:3px solid #658d39}button,.button,.lesson-link,.record-choice{transition:background-color .15s,transform .15s,border-color .15s}button:active:not(:disabled),.button:active,.lesson-link:active{transform:scale(.98)}svg{flex-shrink:0;display:block}h1,h2,p{margin:0}h1{letter-spacing:-.025em;font-size:clamp(27px,7.8vw,33px);font-weight:650;line-height:1.55}h2{font-size:16px;font-weight:650}.app-shell{background:var(--page);max-width:480px;min-height:100dvh;padding:env(safe-area-inset-top) 0 calc(92px + env(safe-area-inset-bottom));margin:0 auto}.app-header{justify-content:space-between;align-items:center;height:84px;padding:20px 28px 14px;display:flex}.wordmark{letter-spacing:.015em;align-items:center;gap:8px;min-height:44px;font-size:22px;font-weight:650;line-height:1;display:inline-flex}.brand-sub{letter-spacing:.11em;color:var(--muted);margin:5px 0 0 1px;font-size:9px;font-weight:500}.brand-symbol{align-items:center;gap:3px;height:22px;margin-right:2px;display:flex}.brand-symbol i{background:var(--green);border-radius:7px 1px;width:7px;height:22px;display:block}.brand-symbol i:last-child{background:#859b69;align-self:flex-end;height:15px}.icon-button{width:44px;height:44px;color:var(--muted);background:0 0;border:0;border-radius:50%;justify-content:center;align-items:center;display:inline-flex}.icon-button:hover{background:var(--sage)}.main-content{padding:0 28px}.eyebrow{color:var(--muted);font-size:12px;font-weight:500}.greeting{margin:8px 0 25px}.greeting .eyebrow{margin-bottom:12px}.today-card{border-radius:var(--radius);background:var(--green);color:#fff;padding:23px 23px 20px;overflow:hidden}.card-topline{color:#d6e2d7;justify-content:space-between;align-items:center;font-size:11px;display:flex}.card-topline>span:first-child{align-items:center;gap:8px;display:flex}.card-topline i{background:var(--lime);border-radius:50%;width:6px;height:6px}.quiet-label{opacity:.8;font-size:10px}.routine-content{align-items:center;min-height:114px;display:flex;position:relative}.routine-content h2{z-index:1;font-size:23px;font-weight:550;line-height:1.65;position:relative}.loop-art{color:var(--lime);opacity:.85;width:113px;height:113px;position:absolute;top:0;right:-21px}.routine-caption{color:#d6e2d7;margin:0 0 23px;font-size:13px}.button{text-align:left;border:0;border-radius:14px;justify-content:space-between;align-items:center;gap:12px;width:100%;min-height:54px;padding:14px 20px;font-size:14px;font-weight:600;line-height:1.7;display:flex}.button.light{background:var(--lime);color:var(--green)}.button.light:hover{background:#eef4d5}.button.primary{background:var(--green);color:#fff}.button.primary:hover:not(:disabled){background:var(--green-hover)}.button:disabled{color:#6c786e;background:#e2e7df}.saved-inline{color:var(--green);align-items:center;gap:6px;margin-top:12px;font-size:12px;display:flex}.week-section{margin-top:29px}.section-heading{justify-content:space-between;align-items:center;gap:10px;min-height:32px;display:flex}.section-heading h2{font-size:14px}.small-link{color:var(--muted);align-items:center;gap:5px;min-height:44px;font-size:11px;display:flex}.week-strip{grid-template-columns:repeat(7,minmax(0,1fr));margin:9px -5px 0;display:grid}.week-day{color:var(--muted);flex-direction:column;align-items:center;gap:7px;font-size:10px;display:flex}.day-mark{border:1px solid var(--line);font-variant-numeric:tabular-nums;border-radius:50%;place-items:center;width:33px;height:33px;font-size:12px;display:grid}.week-day.is-today .day-mark{border-color:var(--green);color:var(--green);background:var(--sage);font-weight:650}.day-mark.has-entry,.week-day.is-today .day-mark.has-entry{background:var(--green);color:#fff;border-color:var(--green)}.day-mark.has-entry.miss,.week-day.is-today .day-mark.has-entry.miss{color:var(--muted);border-color:var(--line);background:#e7ebe5}.week-day i{background:0 0;border-radius:50%;width:4px;height:4px}.week-day.is-today i{background:var(--green)}.quiet-copy{color:var(--muted);font-size:12px;line-height:1.8}.week-section>.quiet-copy{text-align:center;margin-top:13px}.week-loading{height:81px}.lesson-teaser{border-top:1px solid var(--line);margin-top:23px;padding-top:20px}.lesson-link{align-items:center;gap:16px;min-height:113px;padding:16px 0 6px;display:flex}.lesson-number{width:64px;height:75px;color:var(--green);background:#e8eede;border-radius:18px;flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;font-size:30px;font-weight:450;line-height:1.2;display:flex}.lesson-number span{letter-spacing:.13em;margin-top:5px;font-size:8px}.lesson-link-copy{flex:1}.lesson-link-copy strong{font-size:14px;font-weight:600;line-height:1.7;display:block}.lesson-link-copy>span{color:var(--muted);margin-top:7px;font-size:10px;display:block}.prototype-note{color:var(--muted);text-align:center;margin-top:29px;padding:0 20px;font-size:9px}.bottom-nav{width:100%;max-width:480px;padding:11px 30px calc(10px + env(safe-area-inset-bottom));background:var(--page);border-top:1px solid var(--line);z-index:5;display:flex;position:fixed;bottom:0;left:50%;transform:translate(-50%)}.bottom-nav a{color:#7b867f;border-radius:12px;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:5px;min-height:49px;font-size:10px;display:flex}.bottom-nav a[aria-current=page]{color:var(--green);font-weight:700}.page-intro{margin:14px 0 26px}.page-intro .eyebrow{margin-bottom:8px}.page-intro h1{margin-bottom:14px;font-size:28px}.page-intro>p:last-child{color:var(--muted);font-size:13px;line-height:1.9}.record-choices{border:0;gap:11px;margin:0;padding:0;display:grid}.record-choice{border:1px solid var(--line);background:var(--paper);cursor:pointer;border-radius:17px;align-items:center;gap:14px;min-height:87px;padding:17px 15px;display:flex;position:relative}.record-choice.selected{border-color:var(--green);background:var(--sage);box-shadow:inset 0 0 0 1px var(--green)}.record-choice input{opacity:0;cursor:pointer;width:100%;height:100%;margin:0;position:absolute;inset:0}.record-choice:has(input:focus-visible){outline-offset:3px;outline:3px solid #658d39}.record-choices:disabled{opacity:.65}.status-mark{background:#cfdbb6;border:1px solid #a3b28a;border-radius:50%;flex-shrink:0;width:27px;height:27px}.status-mark.half{background:linear-gradient(90deg,#cfdbb6 50%,#0000 50%)}.status-mark.small{background:0 0;position:relative}.status-mark.small:after{content:"";background:#92a373;border-radius:50%;width:9px;height:9px;position:absolute;top:8px;left:8px}.status-mark.line{background:0 0;border-color:#c3cbc0;position:relative}.status-mark.line:after{content:"";background:#879582;width:11px;height:1px;position:absolute;top:12px;left:7px}.choice-copy{flex:1}.choice-copy strong{font-size:14px;font-weight:600;display:block}.choice-copy>span{color:var(--muted);margin-top:4px;font-size:12px;display:block}.radio-mark{border:1px solid #c8d0c4;border-radius:50%;flex-shrink:0;place-items:center;width:19px;height:19px;display:grid}.selected .radio-mark{background:var(--green);border-color:var(--green);color:#fff}.record-action{margin-top:25px}.record-action .quiet-copy{text-align:center;margin-top:10px}.record-week{border-top:1px solid var(--line);padding-top:20px}.text-button{text-underline-offset:4px;background:0 0;border:none;border-radius:6px;min-height:44px;padding:12px 8px;font-size:12px;text-decoration:underline}.save-success{text-align:center;padding:28px 8px 10px}.success-mark{background:var(--lime);width:82px;height:82px;color:var(--green);border-radius:50%;place-items:center;margin:0 auto 24px;animation:.23s ease-out settle;display:grid}.save-success h2{margin:12px 0 16px;font-size:26px}.save-success>.quiet-copy{margin:8px 0 28px}.save-success .text-button{margin-top:12px}.error-message,.storage-warning{color:#85382e;background:#f5e7e2;border-radius:12px;margin-bottom:16px;padding:14px;font-size:12px}.storage-warning{margin:0 20px 16px}.lesson-toolbar{color:var(--muted);justify-content:space-between;align-items:center;margin-bottom:25px;font-size:10px;display:flex}.lesson-toolbar b{color:var(--green);margin-left:7px;font-size:16px;font-weight:500}.back-link{align-items:center;gap:4px;min-height:44px;font-size:12px;display:inline-flex}.lesson-article>.eyebrow{margin-bottom:12px}.lesson-article h1{font-size:clamp(24px,6.9vw,29px);line-height:1.65}.lesson-lead{color:var(--muted);margin-top:19px;font-size:13px;line-height:2}.habit-sequence{background:#edf1e5;border-radius:23px;justify-content:space-evenly;align-items:center;min-height:166px;margin:28px 0;padding:15px;display:flex}.habit-sequence>div{text-align:center}.habit-sequence svg{width:97px;height:77px;stroke:var(--green);stroke-width:1.5px;fill:none;stroke-linecap:round;stroke-linejoin:round}.habit-sequence span{font-size:11px;display:block}.habit-sequence .sequence-connector svg{color:#849578;width:23px;height:23px}.bottom-nav a[aria-current=page] svg{stroke-width:2px}.lesson-body h2{margin-bottom:15px;font-size:18px}.lesson-body p{color:#526257;margin:12px 0;font-size:15px;line-height:2}.takeaway{border-left:2px solid #a6b985;margin:26px 0 31px;padding-left:18px}.takeaway>span{color:var(--muted);font-size:10px}.takeaway p{margin-top:7px;font-size:16px;font-weight:550;line-height:1.8}.lesson-footnote{text-align:center;margin-top:13px}.lesson-complete>p{color:var(--green);justify-content:center;align-items:center;gap:6px;margin-bottom:14px;font-size:12px;display:flex}.about-dialog{background:var(--page);width:min(360px,100% - 32px);color:var(--ink);border:0;border-radius:24px;padding:20px 24px 24px}.about-dialog::backdrop{background:#18271f80}.dialog-heading{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.about-dialog p{margin:12px 0;font-size:13px;line-height:1.9}.danger{color:var(--error)}.sr-only,.skip-link:not(:focus){clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link:focus{background:var(--lime);padding:15px;display:block}@keyframes settle{0%{opacity:.5;transform:scale(.88)}to{opacity:1;transform:scale(1)}}@media (min-width:700px){.app-shell{border-left:1px solid #dde3d8;border-right:1px solid #dde3d8}}@media (max-width:359px){.app-header{padding-left:20px;padding-right:20px}.main-content{padding:0 20px}.today-card{padding:21px 19px 18px}.routine-content h2{font-size:21px}.loop-art{width:90px;top:9px;right:-28px}.record-choice{gap:10px;padding:15px 12px}.lesson-link{gap:12px}.lesson-link-copy strong{font-size:13px}}@media (prefers-reduced-motion:reduce){button,a,.record-choice,.success-mark{transition:none;animation:none}button:active:not(:disabled),.button:active,.lesson-link:active{transform:none}}
.iepila-theme{--ui-background:#fcfbf7;--ui-surface:#fffefa;--ui-text:#25323c;--ui-muted:#626c71;--ui-action:#526f59;--ui-action-pressed:#415a47;--ui-selected:#e6eee6;--ui-peach:#fbe9dc;--ui-peach-ink:#855a36;--ui-soft:#f3f4ed;--ui-neutral:#edf0f2;--ui-leaf:#738a74;--ui-border:#d9ded7;--ui-danger:#923c30;--ui-danger-surface:#fff0ea;--ui-overlay:#25323c66;--ui-font:"Noto Sans JP Variable", -apple-system, BlinkMacSystemFont, "Hiragino Kaku Gothic ProN", "Yu Gothic", "Meiryo", sans-serif;--ui-display:2rem;--ui-heading:1.75rem;--ui-subheading:1.375rem;--ui-title:1.125rem;--ui-body:1rem;--ui-small:.875rem;--ui-caption:.8125rem;--ui-weight-normal:400;--ui-weight-medium:600;--ui-weight-bold:700;--ui-leading:1.65;--ui-leading-heading:1.4;--ui-leading-label:1.5;--ui-space-1:4px;--ui-space-2:8px;--ui-space-3:12px;--ui-space-4:16px;--ui-space-5:20px;--ui-space-6:24px;--ui-space-8:32px;--ui-space-12:48px;--ui-radius-input:12px;--ui-radius-control:16px;--ui-radius-surface:16px;--ui-radius-sheet:24px;--ui-radius-pill:999px;--ui-border-width:1px;--ui-focus-width:3px;--ui-focus-offset:3px;--ui-inset:var(--ui-space-5);--ui-gap:var(--ui-space-6);--ui-item-gap:var(--ui-space-2);--ui-control-height:48px;--ui-icon-small:20px;--ui-icon:24px;--ui-icon-large:32px;--ui-shadow-overlay:0 8px 32px #25323c14;--ui-instant:90ms;--ui-fast:.16s;--ui-normal:.24s;--ui-slow:.38s;--ui-press:.98;--ui-easing:cubic-bezier(.22, 1, .36, 1);--ui-page-width:470px;--ui-workbench-width:1120px;--ui-layer-nav:10;font-family:var(--ui-font);color:var(--ui-text);font-size:var(--ui-body);line-height:var(--ui-leading);font-weight:var(--ui-weight-normal)}.iepila-theme :focus-visible{outline:var(--ui-focus-width) solid var(--ui-action);outline-offset:var(--ui-focus-offset)}.iepila-theme button:active:not(:disabled){transform:scale(var(--ui-press))}@media (prefers-reduced-motion:reduce){.iepila-theme *,.iepila-theme :before,.iepila-theme :after{transition:none;animation:none}.iepila-theme button:active:not(:disabled){transform:none}}
