.db-adaptive-block{margin-top:1.2rem;position:relative;z-index:2}
.db-adaptive-lead{font-weight:700;font-size:1rem;line-height:1.45;margin:0 0 .85rem;overflow-wrap:anywhere}
.db-adaptive-actions{display:flex;align-items:stretch;gap:.55rem;width:100%;min-width:0}
.db-adaptive-action{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.35rem;flex-basis:0;min-width:56px;min-height:104px;padding:.75rem .35rem;border:1px solid transparent;border-radius:1.15rem;background:rgba(255,255,255,.78);color:#047857;font-family:inherit;line-height:1.25;cursor:pointer;transition:flex-grow .38s ease,background .25s ease,box-shadow .25s ease;touch-action:manipulation;box-sizing:border-box}
.db-adaptive-action[data-primary=true]{background:#fff;box-shadow:0 5px 20px #62420722,inset 0 0 0 2px #04785755;border-color:#ffffffcc}
.db-adaptive-action svg{flex:none;width:29px;height:29px}
.db-adaptive-action[data-primary=true] svg{width:36px;height:36px}
.db-adaptive-label{font-size:clamp(.8125rem,2.6vw,1rem);font-weight:800;overflow-wrap:anywhere;text-align:center;max-width:100%}
.db-adaptive-food-note{margin:.7rem 0 0;padding:.65rem .75rem;border-left:3px solid #ffffff66;border-radius:.6rem;background:#00000018;color:inherit;font-size:.875rem;line-height:1.45;overflow-wrap:anywhere}
.db-adaptive-food-note[data-warning=true]{font-weight:700;border-left-color:#fff}
.db-adaptive-configure{display:block;margin:.7rem 0 0 auto;padding:.35rem 0;min-height:32px;color:inherit;background:none;border:0;text-decoration:underline;text-underline-offset:3px;font-size:.8rem;cursor:pointer}
.db-adaptive-action:focus-visible,.db-adaptive-configure:focus-visible,.db-rhythm-settings button:focus-visible,.db-rhythm-settings input:focus-visible,.db-rhythm-close:focus-visible{outline:3px solid #0ea5e9;outline-offset:3px}
.db-rhythm-settings{color:var(--db-text,#0f172a);background:var(--db-surface,#fff);border:1px solid var(--db-border,#e2e8f0);border-radius:1.3rem;padding:1.15rem;min-width:0}
.db-rhythm-settings h2{font-size:1.15rem;line-height:1.4;font-weight:800;margin:0 0 .6rem}
.db-rhythm-help{font-size:.85rem;line-height:1.5;color:var(--db-muted,#64748b);margin:.6rem 0 1rem}
.db-rhythm-period{border:1px solid var(--db-border,#e2e8f0);border-radius:.8rem;margin:1rem 0;padding:.75rem;min-width:0}
.db-rhythm-period legend{padding:0 .3rem;font-size:.95rem;font-weight:700}
.db-rhythm-time-row{display:grid;grid-template-columns:minmax(0,.8fr) repeat(2,minmax(0,1fr));gap:.5rem;align-items:center;margin:.55rem 0}
.db-rhythm-time-row label{font-size:.78rem;min-width:0}.db-rhythm-time-row strong{font-size:.875rem;overflow-wrap:anywhere}
.db-rhythm-settings input[type=time],.db-rhythm-settings input[type=number]{display:block;width:100%;max-width:100%;min-width:0;min-height:44px;background:var(--db-surface,#fff);color:var(--db-text,#0f172a);border:1px solid var(--db-border,#cbd5e1);border-radius:.5rem;padding:.45rem;font:inherit;font-size:.875rem;box-sizing:border-box}
.db-rhythm-weekend{display:flex;align-items:center;gap:.65rem;font-size:.9rem;cursor:pointer;min-height:44px}.db-rhythm-weekend input{width:20px;height:20px;flex:none;accent-color:#059669}
.db-rhythm-water-goal{display:block;margin:1rem 0;font-weight:600;font-size:.9rem}.db-rhythm-water-goal input{margin-top:.5rem}
.db-rhythm-range-head,.db-rhythm-range-row{display:grid;grid-template-columns:minmax(0,1.3fr) repeat(2,minmax(0,1fr));gap:.5rem;align-items:center;padding:.45rem 0}.db-rhythm-range-head{font-size:.75rem;color:var(--db-muted,#64748b)}.db-rhythm-range-row strong{font-size:.8rem;font-weight:600;overflow-wrap:anywhere}
.db-rhythm-settings summary{cursor:pointer;font-weight:700;padding:.7rem 0;min-height:44px}.db-rhythm-form-actions{display:flex;gap:.65rem;flex-wrap:wrap;margin-top:1rem}
.db-rhythm-form-actions button{background:#047857;color:white;border:0;border-radius:.75rem;min-height:44px;padding:.65rem 1.1rem;font-weight:700;cursor:pointer}.db-rhythm-form-actions button[type=button]{background:#64748b}
.db-rhythm-error{color:#dc2626;font-weight:600;font-size:.9rem;margin-top:.5rem}
.db-rhythm-overlay{position:fixed;inset:0;margin:0;width:100vw;height:100dvh;max-width:none;max-height:none;border:0;box-sizing:border-box;z-index:10050;background:#0f172a88;display:flex;align-items:center;justify-content:center;padding:1rem;backdrop-filter:blur(4px);color:var(--db-text,#0f172a)}
.db-rhythm-overlay:not([open]){display:none}.db-rhythm-overlay::backdrop{background:transparent}
.db-rhythm-dialog{position:relative;max-width:620px;width:100%;max-height:calc(100dvh - 2rem);overflow-y:auto;overscroll-behavior:contain;background:var(--db-surface,#fff);border-radius:1.35rem;padding:3.5rem .65rem .65rem;box-shadow:0 20px 70px #0004}
.db-rhythm-dialog .db-rhythm-settings{border:0}.db-rhythm-close{position:absolute;top:.6rem;right:.7rem;display:flex;align-items:center;justify-content:center;border:1px solid var(--db-border,#cbd5e1);border-radius:50%;width:42px;height:42px;background:var(--db-surface,#fff);color:var(--db-text,#0f172a);font-size:1.7rem;cursor:pointer}
@media(min-width:600px){.db-adaptive-action{min-height:106px;padding:.8rem .6rem}.db-adaptive-label{font-size:1rem}.db-adaptive-action svg{width:32px;height:32px}}
@media(max-width:350px){.db-adaptive-actions{gap:.35rem}.db-adaptive-action{min-width:56px;border-radius:.85rem}.db-rhythm-settings{padding:.85rem}.db-rhythm-time-row{grid-template-columns:minmax(0,.6fr) repeat(2,minmax(0,1fr))}}
@media(prefers-reduced-motion:reduce){.db-adaptive-action{transition:none}}
.db-food-guidance{margin:0 0 1rem;padding:.85rem;border:1px solid #34d39955;border-radius:1rem;background:#064e3b44;color:#d1fae5;font-size:.85rem}.db-food-guidance p{margin:.35rem 0}.db-food-guidance button{display:block;width:100%;text-align:left;background:#334155;color:#f1f5f9;border-radius:.55rem;padding:.65rem;margin-top:.4rem;min-height:44px;overflow-wrap:anywhere}
