/* v31.1 وضع التركيز with the cat (approved design «cat9») */
.fc{--fc-cat:#9b8a76;--fc-eye:#d6b13a;--fc-dark:color-mix(in srgb,var(--fc-cat) 62%,#2a2119);--fc-light:color-mix(in srgb,var(--fc-cat) 38%,#f8f2ea);--fc-eye-dark:color-mix(in srgb,var(--fc-eye) 55%,#2a1d10);--fc-whisker:#f4efe8;--fc-line:var(--fc-dark);--fc-text:var(--muted);--fc-btn:var(--s-acc,var(--text));
 max-width:560px;margin:0 auto;box-sizing:border-box;width:100%;padding:22px 28px 26px;border-radius:24px;background:var(--surface);border:1px solid var(--border);display:flex;flex-direction:column;align-items:center;gap:14px}

.fc-modes{display:inline-flex;background:var(--surface-2);border-radius:12px;padding:3px;gap:2px}
.fc-modes button{border:0;background:none;font:inherit;font-size:13px;padding:8px 16px;border-radius:9px;color:var(--muted)}
.fc-modes button.on{background:var(--surface);color:var(--text);font-weight:700;box-shadow:0 1px 2px rgba(0,0,0,.08)}
.fc-stage{position:relative;width:360px;margin-top:84px}
.fc-cat{position:absolute;left:-30px;right:auto;transform:scaleX(-1);bottom:calc(100% - 16px);width:220px;height:114px;overflow:visible;z-index:2}
.fc-clock{position:relative;z-index:1;background:var(--surface-2);border:1px solid var(--border);border-radius:22px;padding:22px 0 16px;text-align:center}
.fc-time{font-size:70px;font-weight:800;letter-spacing:1px;font-variant-numeric:tabular-nums;line-height:1;color:var(--text)}
.fc-sub{color:var(--muted);font-size:13px;margin-top:8px}
/* motion */
.fc-tail{transform-origin:196px 92px;animation:fcTail 3.2s ease-in-out infinite}
@keyframes fcTail{0%,100%{transform:rotate(-8deg)}50%{transform:rotate(16deg)}}
.fc-pupil{animation:fcLook 8s ease-in-out infinite}
@keyframes fcLook{0%,18%{transform:translateX(0)}25%,45%{transform:translateX(-3.5px)}52%,72%{transform:translateX(3.5px)}80%,100%{transform:translateX(0)}}
.fc-lid{transform-origin:0 -11px;transform:scaleY(.45);animation:fcBlink 6s infinite}
@keyframes fcBlink{0%,90%,100%{transform:scaleY(.45)}94%{transform:scaleY(1)}}
.fc-mouth{transform-origin:75px 82px;transform:scaleY(0)}
.fc-zz{display:none}
.fc.is-yawn .fc-mouth{transform:scaleY(1)}.fc.is-yawn .fc-smile{display:none}.fc.is-yawn .fc-lid{animation:none;transform:scaleY(1)}.fc.is-yawn .fc-head{transform:rotate(5deg);transform-origin:75px 95px}
.fc.is-break .fc-lid{animation:none;transform:scaleY(1)}.fc.is-break .fc-zz{display:inline}.fc.is-break .fc-tail{animation-duration:7s}
.fc-dots{display:flex;gap:7px}.fc-dots i{width:9px;height:9px;border-radius:50%;background:var(--border)}.fc-dots i.on{background:var(--fc-btn)}
.fc-btns{display:flex;gap:10px;align-items:center}
.fc-play{width:64px;height:64px;border-radius:50%;border:0;background:var(--fc-btn);color:#fff;display:grid;place-items:center}
body[data-theme="dark"]:not([data-season]) .fc-play,body[data-theme="dark"][data-season=""] .fc-play{color:#1a1a1a}
.fc-small{width:44px;height:44px;border-radius:50%;border:1px solid var(--border);background:var(--surface);color:var(--text);display:grid;place-items:center}
.fc-link{width:100%;display:flex;flex-direction:column;gap:8px}.fc-link-seg{display:inline-flex;align-self:flex-start;background:var(--surface-2);border-radius:10px;padding:3px;gap:2px}.fc-link-seg span{padding:6px 12px;border-radius:8px;font-size:12.5px;color:var(--muted)}.fc-link-seg span.on{background:var(--surface);color:var(--text);font-weight:700}
.fc-link input,.fc-link select{font:inherit;padding:10px 12px;border-radius:12px;border:1px solid var(--border);background:var(--surface-2);color:var(--text)}.fc-link label{font-size:12.5px;color:var(--muted)}
.fc-today{display:flex;justify-content:space-between;width:100%;font-size:12.5px;color:var(--muted);border-top:1px solid var(--border);padding-top:12px}

.fc-lidline{display:none}.fc.is-yawn .fc-lidline,.fc.is-break .fc-lidline{display:inline}
.fc-eye .fc-lid{clip-path:inset(0)}
.fc-set{width:100%;border:1px solid var(--border);border-radius:16px;padding:12px 14px;display:flex;flex-direction:column;gap:10px;background:var(--surface-2)}
.fc-set b{font-size:13px}.fc-set-row{display:flex;gap:10px;flex-wrap:wrap}
.fc-pick{display:flex;align-items:center;gap:8px;padding:6px 10px 6px 6px;border-radius:12px;background:var(--surface);border:1px solid var(--border);font-size:12.5px}
.fc-pick i{width:26px;height:26px;border-radius:50%;display:inline-block;box-shadow:inset 0 0 0 1px rgba(0,0,0,.15)}
.fc-pres{display:flex;gap:6px}.fc-pres i{width:22px;height:22px;border-radius:50%;display:inline-block;box-shadow:inset 0 0 0 1px rgba(0,0,0,.15)}


@keyframes fcTail{0%,100%{transform:rotate(-6deg)}50%{transform:rotate(9deg)}}


.fc .fc-asleep{display:none}.fc.is-break .fc-awake{display:none}.fc.is-break .fc-asleep{display:block}
.fc-breath{transform-origin:110px 120px;animation:fcBreath 3.6s ease-in-out infinite}@keyframes fcBreath{0%,100%{transform:scale(1)}50%{transform:scale(1.025,1.05)}}
.fc-zz text{animation:fcZ 3s ease-in-out infinite}.fc-zz text:nth-child(2){animation-delay:.6s}.fc-zz text:nth-child(3){animation-delay:1.2s}
@keyframes fcZ{0%{opacity:0;transform:translateY(4px)}40%{opacity:1}100%{opacity:0;transform:translateY(-8px)}}
/* the yarn ball rolls along the top edge as the session goes; the cat watches it */
.fc-track{position:absolute;left:18px;right:18px;top:-1px;height:2px;background:color-mix(in srgb,var(--fc-btn) 25%,transparent);border-radius:2px}
.fc-track b{position:absolute;inset:0 0 0 auto;width:var(--p);background:var(--fc-btn);border-radius:2px}
.fc-yarn{position:absolute;top:-15px;right:calc(var(--p) - 8px);width:16px;height:16px;border-radius:50%;background:radial-gradient(circle at 35% 35%,color-mix(in srgb,var(--fc-btn) 40%,#fff),var(--fc-btn));box-shadow:0 2px 3px rgba(0,0,0,.2)}
.fc-yarn:before,.fc-yarn:after{content:'';position:absolute;inset:3px;border-radius:50%;border:1.2px solid rgba(255,255,255,.45);border-color:rgba(255,255,255,.5) transparent}
.fc-yarn:after{inset:6px;transform:rotate(60deg)}
.fc.is-break .fc-yarn{display:none}

.fc:not(.is-break) .fc-pupil{animation:none;transform:translateX(3px)}

.fc-zz text{transform-box:fill-box}
.fc-cat .fc-zz{transform:scaleX(-1);transform-origin:118px 30px}

.fc-stage{max-width:100%}
.fc-clock .fc-time{direction:ltr}
.fc-modes button,.fc-link-seg button{cursor:pointer}
.fc-link-seg{display:inline-flex}
.fc-link-seg button{border:0;background:none;font:inherit;padding:6px 12px;border-radius:8px;font-size:12.5px;color:var(--muted)}
.fc-link-seg button[aria-pressed="true"]{background:var(--surface);color:var(--text);font-weight:700;box-shadow:0 1px 2px rgba(0,0,0,.08)}
.fc form{width:100%;display:flex;flex-direction:column;align-items:center;gap:14px}
.fc-dur{display:flex;align-items:center;gap:8px;font-size:12.5px;color:var(--muted)}
.fc-dur input{width:76px;text-align:center;font:inherit;padding:7px 8px;border-radius:10px;border:1px solid var(--border);background:var(--surface-2);color:var(--text)}
.fc-locked{width:100%;padding:10px 12px;border-radius:12px;background:var(--surface-2);font-size:13.5px}
.fc-sec{display:flex;gap:10px}
.fc-play .ico-label,.fc-small .ico-label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}
.fc-play,.fc-small{position:relative;cursor:pointer}
.fc-set[hidden]{display:none!important}
.fc-set input[type=number]{width:64px;font:inherit;padding:6px 8px;border-radius:10px;border:1px solid var(--border);background:var(--surface);color:var(--text);text-align:center}
.fc-set label{display:flex;align-items:center;gap:6px;font-size:12.5px}
.fc-pick input{width:26px;height:26px;border:0;padding:0;background:none;border-radius:50%;cursor:pointer}
.fc-pres button{width:24px;height:24px;border-radius:50%;border:2px solid var(--surface);box-shadow:0 0 0 1px var(--border);cursor:pointer;padding:0}
.fc-pres button[aria-pressed="true"]{box-shadow:0 0 0 2px var(--text)}
.fc-intent-note{font-size:12.5px;color:var(--muted);margin:0}
@media (max-width:520px){.fc{padding:18px 16px}.fc-stage{width:100%}.fc-time{font-size:56px}.fc-cat{width:180px;height:94px;left:-16px}}
@media (prefers-reduced-motion:reduce){.fc *{animation:none!important}}
.fc-after-intent{display:flex;align-items:center;gap:10px;padding:8px 0;font-size:14px}.fc-after-intent input{width:20px!important;height:20px!important}
.fc-plan-date{align-self:flex-start;font-size:11.5px}
