/* Optional 30-day guide, isolated from existing site styles */
.thirty-guide{max-width:1120px;margin:0 auto;padding:18px 0 28px;color:var(--ink)}
.thirty-heading{padding:20px 0 23px;max-width:900px}
.thirty-heading h1{font-size:clamp(34px,5vw,61px);letter-spacing:-.055em;line-height:1.03;margin:14px 0}
.thirty-heading h1 em{color:#7247a0;font-weight:500}
.thirty-heading>p{font-size:16px;line-height:1.55;margin:8px 0}
.thirty-muted,.thirty-disclaimer{color:#60636a!important;font-size:14px!important}
.thirty-summary{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:16px 19px;border-radius:18px;background:#eff6dd;margin-bottom:23px}
.thirty-summary strong{font-size:22px;letter-spacing:-.035em}
.thirty-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}
.thirty-day{width:100%;display:flex;align-items:center;gap:14px;min-width:0;text-align:left;padding:15px 18px;border:1px solid #deded7;border-radius:17px;background:var(--reader-card,#fff);color:#17191c;transition:transform .15s,border-color .15s}
.thirty-day:hover{transform:translateY(-2px);border-color:#64605e}
.thirty-day-num{flex:none;display:grid;place-items:center;width:46px;height:46px;border-radius:13px;background:#dbfb83;font-size:17px;font-weight:900}
.thirty-day-detail{min-width:0;flex:1}.thirty-day-detail strong{display:block;font-size:16px;line-height:1.3;letter-spacing:-.025em}.thirty-day-detail small{display:block;margin-top:4px;font-size:12px;color:#616569}
.thirty-day-status{flex:none;font-size:12px;font-weight:800;white-space:nowrap;color:#654c91}
.thirty-day-done .thirty-day-num{background:#dcefe3}
.thirty-breadcrumb{display:flex;gap:16px;align-items:center;justify-content:space-between;padding:8px 0;color:#555;font-size:12px;font-weight:800}
.thirty-breadcrumb button{border:0;padding:10px 0;background:transparent;color:#604090;font-size:14px;font-weight:800;text-decoration:underline}
.thirty-steps{display:grid;gap:12px}
.thirty-step{display:grid;grid-template-columns:84px 1fr;gap:17px;align-items:start;border:1px solid #deded7;border-radius:19px;padding:20px;background:var(--reader-card,#fff)}
.thirty-time{font-size:14px;font-weight:900;color:#291e31;background:#e9def6;padding:10px 7px;border-radius:11px;text-align:center}
.thirty-step-num{font-size:11px;font-weight:850;letter-spacing:.12em;color:#6e5c81}
.thirty-step h2{font-size:21px;margin:4px 0 5px;letter-spacing:-.025em}
.thirty-step p{color:#414750;font-size:14px;line-height:1.55;margin:0 0 14px}
.thirty-step .btn{background:#d7f76d;color:#17191c;border-color:#1b1d15;border-radius:12px;box-shadow:3px 4px 0 #232a20}
.thirty-step .btn:active{transform:translate(2px,2px);box-shadow:1px 2px 0 #232a20}
.thirty-finish{padding:19px 22px;background:#f0f0e9;border-radius:19px;margin:17px 0}
.thirty-finish label{display:flex;align-items:center;gap:12px;font-weight:800;font-size:16px}
.thirty-finish input{width:22px;height:22px;accent-color:#68439d}
.thirty-finish p{font-size:12px;color:#555e60;margin:7px 0 0 34px}
.thirty-prevnext{display:flex;justify-content:space-between;align-items:center;gap:8px;margin:19px 0}
.thirty-disclaimer{margin:18px 0}
.thirty-entry{margin:17px 0 22px;display:flex;justify-content:space-between;align-items:center;gap:18px;padding:18px 21px;border-radius:19px;border:1px solid #d4d9c8;background:#e9f4d5}
.thirty-entry strong{display:block;font-size:19px;letter-spacing:-.03em}.thirty-entry p{font-size:14px;margin:4px 0;color:#495049}
.thirty-entry .btn{white-space:nowrap;background:#181c18;border-color:#181c18}
html[data-reading-theme]:not([data-reading-theme="default"]) :is(.thirty-entry,.thirty-finish,.thirty-summary){background:var(--reader-subtle);color:#17191c}
html[data-reading-theme]:not([data-reading-theme="default"]) :is(.thirty-step,.thirty-day){background:var(--reader-card);color:#17191c}
@media(max-width:730px){.thirty-list{grid-template-columns:1fr}.thirty-entry,.thirty-summary{align-items:flex-start;flex-direction:column}.thirty-step{grid-template-columns:1fr;padding:17px;gap:9px}.thirty-time{width:max-content;min-width:70px}.thirty-heading{padding-top:6px}.thirty-day{padding:13px;gap:10px}.thirty-day-num{width:39px;height:39px;font-size:14px}.thirty-day-detail strong{font-size:14px}.thirty-day-status{font-size:11px}.thirty-entry .btn{white-space:normal}}
@media(prefers-reduced-motion:reduce){.thirty-day,.thirty-step .btn{transition:none}.thirty-day:hover{transform:none}}
