/* Modern care dock; the retro desktop and supplied mascot are intentionally independent. */
.mc-pet-ui{--mc-accent:#eabc85;--mc-ink:#fff6eb;position:fixed;right:max(14px,env(safe-area-inset-right,0px));bottom:calc(64px + env(safe-area-inset-bottom,0px));z-index:1000000040;display:flex;flex-direction:column;align-items:flex-end;gap:12px;font:500 12px/1.4 ui-sans-serif,system-ui,-apple-system,sans-serif;color:var(--mc-ink);pointer-events:none;color-scheme:dark}
.mc-pet-ui *{box-sizing:border-box;font-family:inherit}
.mc-pet-ui svg{display:block;width:22px;height:22px;flex-shrink:0;pointer-events:none}
.mc-pet-ui button{appearance:none;font:inherit;color:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;pointer-events:auto}
.mc-pet-ui button:focus-visible{outline:2px solid #efc798;outline-offset:3px}
.mc-pet-ui__toggle{order:2;width:48px;height:48px;display:grid;place-items:center;margin:0;padding:0;border:1px solid #ffffff35;border-radius:50%;background:#1b1625ed;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);box-shadow:0 5px 24px #0e051e55,inset 0 1px 0 #ffffff20;transition:transform .25s ease,background .25s ease;}
.mc-pet-ui__toggle svg{width:25px;height:25px;color:var(--mc-accent);transition:transform .35s cubic-bezier(.2,.8,.2,1)}
.mc-pet-ui.is-open .mc-pet-ui__toggle svg{transform:rotate(-22deg)}
.mc-pet-ui__panel{order:1;box-sizing:border-box;pointer-events:auto;width:268px;max-width:calc(100vw - 28px);max-height:calc(100dvh - 144px);overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;padding:12px 16px 10px;border:1px solid #ffffff29;border-radius:26px;background:radial-gradient(ellipse at 10% 0%,#71495d3b,transparent 65%),#17131fee;backdrop-filter:blur(26px) saturate(125%);-webkit-backdrop-filter:blur(26px) saturate(125%);box-shadow:0 20px 70px #08041155,inset 0 1px 0 #ffffff15;transform-origin:bottom right;animation:mc-dock-enter .24s cubic-bezier(.2,.8,.2,1) both}
.mc-pet-ui__panel[hidden]{display:none}
.mc-pet-ui__header{display:flex;width:auto;font-size:12px;justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px}
.mc-pet-ui__header h2{display:flex;gap:8px;align-items:center;margin:0!important;font:650 15px/1.4 ui-sans-serif,system-ui,-apple-system,sans-serif!important;letter-spacing:-.02em;text-transform:none;color:var(--mc-ink)}
.mc-presence{width:5px;height:5px;border-radius:50%;background:#a7dcb0;box-shadow:0 0 8px #a7dcb050}
.mc-pet-ui[data-mood=sleeping] .mc-presence{background:#c3b1ed;box-shadow:none}
.mc-pet-ui__close{display:grid;place-items:center;width:44px;height:44px;margin:-4px -8px -4px 0;padding:0;border:0;border-radius:50%;background:transparent;color:#bdb2c8!important}
.mc-pet-ui__close svg{width:17px;height:17px}
.mc-pet-ui__meters{display:grid;grid-template-columns:repeat(5,1fr);gap:13px;margin:0 2px 18px}
.mc-pet-meter{display:flex;flex-direction:column;align-items:center;gap:8px;color:#c3b6cc}
.mc-pet-meter svg{width:15px;height:15px}
.mc-pet-meter__track{display:block;width:100%;height:3px;border-radius:3px;background:#ffffff16;overflow:hidden}
.mc-pet-meter__track i{display:block;height:100%;background:#dac1ef;border-radius:inherit;transition:width .4s ease}
.mc-pet-meter[data-level=low] i{background:#ed9d90}
.mc-pet-meter[data-level=mid] i{background:#e7c697}
.mc-pet-ui__actions{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.mc-icon-button{position:relative;display:grid;place-items:center;min-width:44px;height:54px;padding:0;border:1px solid #ffffff0e;border-radius:16px;background:#ffffff06;transition:background .18s ease,border-color .18s ease,transform .18s ease;}
.mc-icon-button:active{transform:scale(.93);background:#e8b78722}
.mc-icon-button:focus-visible{background:#e8b78716;border-color:#e9bd8740}
.mc-icon-label{position:absolute;left:50%;bottom:calc(100% + 6px);padding:5px 8px;border:1px solid #ffffff22;border-radius:8px;background:#eee3f5;color:#231728;font-size:10px;white-space:nowrap;transform:translate(-50%,4px);opacity:0;visibility:hidden;pointer-events:none;z-index:3;transition:opacity .15s ease,transform .15s ease}
.mc-icon-button:focus-visible .mc-icon-label{opacity:1;visibility:visible;transform:translate(-50%,0)}
.mc-supply{position:absolute;top:5px;right:8px;color:#cabfd2;font-size:9px;font-variant-numeric:tabular-nums}
.mc-pet-ui__footer{display:flex;justify-content:space-between;align-items:center;gap:6px;margin-top:12px;padding-top:8px;border-top:1px solid #ffffff10}
.mc-pet-ui__footer .mc-icon-button{width:44px;height:44px;border:0;background:transparent;color:#c3b6cc}
.mc-pet-ui__footer .mc-icon-button svg{width:18px;height:18px}
.mc-pet-ui__path{display:flex;align-items:center;gap:5px;color:var(--mc-accent);font-size:10px;white-space:nowrap;}
.mc-pet-ui__path svg{width:12px;height:12px}
.mc-icon-button.is-acknowledged svg{animation:mc-action-tap .3s ease}
.mc-pet-toasts{position:fixed;left:50%;bottom:calc(208px + env(safe-area-inset-bottom,0px));transform:translateX(-50%);z-index:1000000042;display:flex;flex-direction:column;align-items:center;gap:6px;pointer-events:none;font:12px/1.45 ui-sans-serif,system-ui,sans-serif}
.mc-pet-toast{box-sizing:border-box;max-width:min(300px,86vw);padding:10px 16px;border:1px solid #ffffff25;border-radius:16px;background:#1b1528f5;color:#fff0e2;box-shadow:0 8px 30px #13061d40;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);opacity:0;transform:translateY(7px);transition:opacity .2s ease,transform .2s ease}
.mc-pet-toast.is-on{opacity:1;transform:translateY(0)}
.mc-pet-toast.is-out{opacity:0;transform:translateY(-4px)}
.mc-pet-toast.is-need{border-color:#e6ab8955}
.mc-pet-play-pulse{position:fixed;width:12px;height:12px;margin:-6px;border-radius:50%;border:2px solid #eed1ff;pointer-events:none;z-index:1000000041;opacity:0}
.mc-pet-play-pulse.is-on{animation:mc-pet-pulse .85s ease-out forwards}
@media(hover:hover){.mc-pet-ui__toggle:hover{transform:translateY(-2px);background:#302237}.mc-icon-button:hover{transform:translateY(-2px);background:#e8b78716;border-color:#e9bd8733}.mc-icon-button:hover .mc-icon-label{opacity:1;visibility:visible;transform:translate(-50%,0)}.mc-pet-ui__close:hover{background:#ffffff0c}}
@media(max-width:600px){.mc-pet-ui__panel{width:260px;max-height:min(52dvh,calc(100dvh - 280px));border-radius:24px}}
@keyframes mc-dock-enter{from{opacity:0;transform:scale(.96) translateY(6px)}to{opacity:1;transform:none}}
@keyframes mc-action-tap{50%{transform:scale(1.18) rotate(-8deg)}}
@keyframes mc-pet-pulse{0%{opacity:.95;transform:scale(.6);box-shadow:0 0 0 0 #dab2ee50}100%{opacity:0;transform:scale(4.2);box-shadow:0 0 0 24px #dab2ee00}}
@media(prefers-reduced-motion:reduce){.mc-pet-ui *,.mc-pet-toast,.mc-pet-play-pulse{animation:none!important;transition:none!important}}
.mc-pet-toast{font-family:inherit}
.mc-pet-ui__footer .mc-icon-button:first-child .mc-icon-label{left:0;transform:translateY(4px)}
.mc-pet-ui__footer .mc-icon-button:last-child .mc-icon-label{left:auto;right:0;transform:translateY(4px)}
.mc-pet-ui__footer .mc-icon-button:focus-visible .mc-icon-label{transform:translateY(0)}
@media(hover:hover){.mc-pet-ui__footer .mc-icon-button:hover .mc-icon-label{transform:translateY(0)}}

@media(max-width:600px){.mc-pet-toasts{bottom:calc(178px + env(safe-area-inset-bottom,0px))}}
@media(max-width:360px){.mc-pet-ui.is-open{gap:36px}}
