/* A short Peapod-inspired focus → check → celebration flow. */
.focus-screen,.focus-check-screen,.focus-celebration{max-width:540px!important;margin:0 auto!important;}.focus-screen{display:flex;flex-direction:column;min-height:calc(100dvh - 112px);justify-content:center;}.focus-action h2{font-size:22px;line-height:1.45;margin:0;text-align:center;overflow-wrap:anywhere;}.focus-action p{font-size:15px;line-height:1.65;text-align:center;margin:12px 0 0;color:var(--muted);}.focus-screen .timer-orb{margin:28px auto;width:240px;height:240px;box-shadow:none;border:1px solid #d8e6ff;background:radial-gradient(circle at 40% 30%,#fff,#e9f2ff);}.focus-screen .timer-orb strong{font-size:48px;color:#254eaa;}.focus-screen .timer-orb small{color:#6c82a3;font-size:13px;}.focus-screen>.primary,.focus-check-screen>.primary,.focus-celebration>.primary{box-shadow:none;}.focus-secondary{display:grid;grid-template-columns:1fr 1fr;gap:12px;}.focus-secondary .secondary{margin:0;min-height:46px;}.focus-stop{border:0;background:none;color:var(--muted);padding:16px;font:inherit;font-size:12px;cursor:pointer;}.focus-check-screen h2{font-size:21px;line-height:1.5;margin:12px 0 24px;overflow-wrap:anywhere;}.focus-check-goal{border:1px solid #dce6f4;border-radius:20px;background:#fff;padding:18px;margin-bottom:24px;}.focus-check-goal>span{font-size:12px;color:var(--muted);}.focus-check-goal p{margin:10px 0 0;font-size:15px;line-height:1.7;}.focus-evidence-label{display:grid;gap:10px;font-size:14px;}.focus-evidence-label textarea{padding:14px;border:1px solid #dce6f4;border-radius:16px;background:#fff;font:inherit;resize:vertical;color:var(--ink);}.focus-done-check{display:flex;align-items:center;gap:10px;margin:20px 0;font-size:14px;}.focus-done-check input{width:20px;height:20px;accent-color:#3564da;}.focus-celebration{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:calc(100dvh - 112px);text-align:center;overflow:hidden;}.focus-celebration h2{font-size:28px;line-height:1.4;margin:20px 0 10px;}.celebration-uu{width:220px;height:260px;object-fit:contain;margin:15px auto;}.focus-celebration p{font-size:16px;line-height:1.6;margin:10px 0;}.focus-celebration small{font-size:12px;color:var(--muted);}.celebration-reward{font-size:28px;color:#3564da;margin:20px 0 12px;}.focus-celebration>.primary{width:100%;margin-top:30px;}.celebration-confetti{position:absolute;inset:0;pointer-events:none;}.celebration-confetti i{position:absolute;left:var(--x);top:-12px;width:6px;height:14px;border-radius:2px;background:#84a8f4;opacity:0;animation:celebration-fall 1.4s var(--delay) ease-out forwards;}.celebration-confetti i:nth-child(3n){background:#e6c466;}.celebration-confetti i:nth-child(3n+1){background:#bbc6ff;}@keyframes celebration-fall{0%{opacity:0;transform:translateY(0) rotate(var(--turn));}20%{opacity:.9;}100%{opacity:0;transform:translateY(430px) rotate(calc(var(--turn) + 140deg));}}.theme-dark .focus-check-goal,.theme-dark .focus-evidence-label textarea{background:#203047;border-color:#405a82;}.theme-dark .focus-screen .timer-orb{background:radial-gradient(#263f64,#203047);border-color:#405a82;}.theme-dark .focus-screen .timer-orb strong{color:#c1d8ff;}.task-list-manage{margin-top:14px;}.task-list-manage>input{width:100%;padding:12px;border:1px solid #dce6f4;border-radius:12px;font:inherit;}.task-list-manage>summary{color:var(--muted);font-size:12px;}
@media(prefers-reduced-motion:reduce){.celebration-confetti i{animation:none;}}

.focus-timer-control{display:flex;align-items:center;justify-content:center;flex-shrink:0;font:inherit;cursor:pointer;touch-action:manipulation;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;color:inherit;}.focus-timer-control strong,.focus-timer-control small{display:block;}.focus-timer-control:focus-visible{outline:3px solid #85aaff;outline-offset:5px;}.focus-timer-control:active{transform:scale(.985);}.focus-timer-hint{text-align:center;font-size:11px;color:var(--muted);margin:-12px 0 28px;}
/* UG-FE-20261015-D01: keep preparation and stopping controls explicit in the existing focus style. */
.focus-preparation{grid-template-columns:1fr;margin-top:12px;}.focus-stop{min-height:44px;}.focus-stop:focus-visible,.focus-stop-reasons button:focus-visible{outline:3px solid #85aaff;outline-offset:3px;}.focus-result>h2,.focus-result>p{text-align:center;overflow-wrap:anywhere;}.focus-stop-reasons{margin:12px 0 24px;}.focus-stop-reasons>p{font-size:14px;color:var(--muted);}.focus-stop-reasons .stop-reason{min-height:44px;font:inherit;font-size:13px;}.focus-result>.secondary{margin-top:12px;}
