.tbp-plan-generator{max-width:960px;margin:20px auto 32px;padding:0 0 22px;border:1px solid var(--tbp-palette-soft,#f3e6bc);border-radius:18px;overflow:hidden;background:#f6f7f8;color:var(--tbp-palette-ink,#302a21);box-shadow:0 14px 32px rgba(48,42,33,.11);font:16px/1.5 system-ui,-apple-system,"Segoe UI",Arial,sans-serif}
.tbp-plan-generator *{box-sizing:border-box}.tbp-plan-generator button,.tbp-plan-generator input,.tbp-plan-generator select{font:inherit}.tbp-plan-generator button{cursor:pointer}
.tbp-plan-head{padding:24px 28px;background:linear-gradient(120deg,var(--tbp-palette-ink,#302a21),var(--tbp-palette-ink,#302a21));color:var(--tbp-palette-card,#ffffff)}
.tbp-plan-head h2{margin:3px 0 7px!important;color:var(--tbp-palette-card,#ffffff)!important;font:700 clamp(1.45rem,2.2vw,1.9rem)/1.2 Georgia,"Times New Roman",serif}.tbp-plan-head p{margin:0;color:var(--tbp-palette-soft,#f3e6bc)}.tbp-plan-head .tbp-plan-kicker{font-size:.73rem;font-weight:800;letter-spacing:.11em;text-transform:uppercase;color:#e8c46a}
.tbp-plan-controls{display:grid;grid-template-columns:1.2fr 1fr .8fr;gap:14px;padding:19px 23px 6px}.tbp-plan-controls label{display:grid;gap:6px;font-size:.84rem;font-weight:750}.tbp-plan-controls select{width:100%;height:43px;border:1px solid var(--tbp-palette-accent,#806021);border-radius:8px;padding:6px 10px;background:var(--tbp-palette-card,#ffffff);color:var(--tbp-palette-ink,#302a21)}
.tbp-plan-guidance{margin:0;padding:6px 23px 14px;font-size:.82rem;color:var(--tbp-palette-accent,#806021)}.tbp-plan-summary{display:flex;justify-content:space-between;gap:14px;padding:11px 23px;border-top:1px solid var(--tbp-palette-soft,#f3e6bc);border-bottom:1px solid var(--tbp-palette-soft,#f3e6bc);background:var(--tbp-palette-card,#ffffff);font-weight:750;font-size:.86rem}
.tbp-plan-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:10px;padding:21px 23px}.tbp-plan-generator .tbp-plan-days button{position:relative;width:42px;height:42px;justify-self:center;border:1px solid var(--tbp-palette-soft,#f3e6bc);border-radius:50%;background:var(--tbp-palette-soft,#f3e6bc);color:var(--tbp-palette-ink,#302a21);font-weight:800;transition:transform .15s,background .15s}.tbp-plan-generator .tbp-plan-days button:hover,.tbp-plan-generator .tbp-plan-days button[aria-current="date"]{background:#d4af37;border-color:#9f7f18;color:var(--tbp-palette-ink,#302a21);transform:scale(1.1)}.tbp-plan-generator .tbp-plan-days button.is-complete{border-color:#528768;box-shadow:0 0 0 3px #d5ebdd}.tbp-plan-generator .tbp-plan-days button.is-complete:after{content:"✓";position:absolute;right:-3px;top:-7px;font-size:.65rem;color:#287746}
.tbp-plan-day{margin:0 23px 16px;padding:18px 19px;border:1px solid var(--tbp-palette-soft,#f3e6bc);border-left:4px solid #d4af37;border-radius:10px;background:var(--tbp-palette-card,#ffffff)}.tbp-plan-day-head{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.tbp-plan-day-head span{font-size:.76rem;text-transform:uppercase;letter-spacing:.08em;font-weight:800;color:var(--tbp-palette-accent,#806021)}.tbp-plan-day-head h3{margin:0!important;color:var(--tbp-palette-ink,#302a21)!important;font-family:Georgia,"Times New Roman",serif}.tbp-plan-day-head span:last-child{margin-left:auto;color:#866710}.tbp-plan-day>p{margin:10px 0;color:var(--tbp-palette-ink,#302a21)}.tbp-plan-passages{display:grid;grid-template-columns:1fr 1fr;gap:10px}.tbp-plan-passages p{display:grid;gap:4px;margin:0;padding:12px;border:1px solid var(--tbp-palette-soft,#f3e6bc);border-radius:7px;background:#fbfbf8}.tbp-plan-passages strong{font-size:.77rem;color:var(--tbp-palette-accent,#806021);text-transform:uppercase;letter-spacing:.05em}.tbp-plan-passages a{color:var(--tbp-palette-accent,#806021);font-weight:750;text-decoration:underline;text-underline-offset:3px}.tbp-plan-done{display:inline-flex;align-items:center;gap:8px;padding:7px 10px;border-radius:7px;background:#e8f2ea;font-weight:700}.tbp-plan-done input{width:18px;height:18px;accent-color:#397951}
.tbp-plan-actions{display:flex;flex-wrap:wrap;gap:8px;padding:0 23px}.tbp-plan-generator .tbp-plan-actions button{padding:8px 13px;border:1px solid var(--tbp-palette-ink,#302a21);border-radius:7px;background:var(--tbp-palette-ink,#302a21);color:var(--tbp-palette-card,#ffffff);font-weight:700}.tbp-plan-generator .tbp-plan-actions button:hover:not(:disabled){background:#d4af37;color:var(--tbp-palette-ink,#302a21);border-color:#a98928}.tbp-plan-generator .tbp-plan-actions button:disabled{opacity:.45;cursor:default}.tbp-plan-generator .tbp-plan-actions button:last-child{margin-left:auto;background:var(--tbp-palette-card,#ffffff);color:var(--tbp-palette-ink,#302a21)}.tbp-plan-privacy{margin:12px 23px 0;font-size:.8rem;color:var(--tbp-palette-accent,#806021)}
.tbp-plan-generator :focus-visible{outline:3px solid #d4af37;outline-offset:3px}
@media(max-width:700px){.tbp-plan-controls{grid-template-columns:1fr 1fr}.tbp-plan-controls label:first-child{grid-column:1/-1}.tbp-plan-passages{grid-template-columns:1fr}}@media(max-width:480px){.tbp-plan-head{padding:20px}.tbp-plan-controls{grid-template-columns:1fr}.tbp-plan-controls label:first-child{grid-column:auto}.tbp-plan-summary{display:block}.tbp-plan-days{gap:6px;padding:18px 12px}.tbp-plan-generator .tbp-plan-days button{width:35px;height:35px}.tbp-plan-day{margin:0 14px 15px}.tbp-plan-actions{padding:0 14px}.tbp-plan-generator .tbp-plan-actions button:last-child{margin-left:0}}
@media(prefers-reduced-motion:reduce){.tbp-plan-generator *{transition:none!important;scroll-behavior:auto!important}}

.tbp-plan-overview,.tbp-plan-import{padding:16px;border-top:1px solid var(--tbp-palette-soft,#f3e6bc)}.tbp-plan-overview summary,.tbp-plan-import summary{cursor:pointer;font-weight:bold}.tbp-plan-overview button,.tbp-plan-import button{white-space:normal;max-width:100%;min-height:42px;margin:6px}.tbp-plan-import input{max-width:100%}.tbp-plan-generator [data-role="save-status"]{padding:0 16px;overflow-wrap:anywhere}
