:root{--fw-motion:cubic-bezier(.22,.8,.26,1);--fw-spring:cubic-bezier(.2,1.35,.45,1);--fw-yellow:#ffb51c;--fw-navy:#0b1f36;--fw-blue:#1778f2}
@keyframes fwSpin{to{transform:rotate(360deg)}}@keyframes fwLaunchSpin{0%{transform:rotate(-35deg) scale(.72);opacity:0}58%{transform:rotate(285deg) scale(1.05);opacity:1}82%{transform:rotate(330deg) scale(.98)}100%{transform:rotate(325deg) scale(1);opacity:1}}@keyframes fwGrip{0%,100%{transform:scaleX(.74);opacity:0}55%{transform:scaleX(1);opacity:.3}}@keyframes fwRise{0%{opacity:0;transform:translateY(12px) scale(.985)}100%{opacity:1;transform:none}}@keyframes fwPulse{0%,100%{box-shadow:0 0 0 0 rgba(255,181,28,0)}45%{box-shadow:0 0 0 7px rgba(255,181,28,.16)}}@keyframes fwTick{0%{transform:scale(.25) rotate(-24deg);opacity:0}70%{transform:scale(1.12) rotate(3deg);opacity:1}100%{transform:scale(1) rotate(0)}}@keyframes fwToast{0%{opacity:0;transform:translate(-50%,16px) scale(.96)}100%{opacity:1;transform:translate(-50%,0) scale(1)}}@keyframes fwShake{0%,100%{transform:translateX(0)}25%{transform:translateX(-3px) rotate(-2deg)}55%{transform:translateX(3px) rotate(2deg)}75%{transform:translateX(-1px)}}@keyframes fwStockIn{0%{transform:translateX(-18px) rotate(-90deg);opacity:0}100%{transform:none;opacity:1}}@keyframes fwStockOut{0%{transform:none;opacity:1}100%{transform:translateX(18px) rotate(90deg);opacity:0}}
.fw-launch{position:fixed;inset:0;z-index:9999;display:grid;place-items:center;background:linear-gradient(155deg,#07182b,#0d2948);transition:opacity .22s ease,visibility .22s ease}.fw-launch.hide{opacity:0;visibility:hidden}.fw-launch-inner{text-align:center;color:#fff}.fw-launch-wheel,.fw-loader-wheel,.fw-success-wheel,.fw-pull-wheel{position:relative;border-radius:50%;border-style:solid;border-color:#172d46;box-shadow:inset 0 0 0 4px var(--fw-yellow),0 10px 28px rgba(0,0,0,.2)}.fw-launch-wheel{width:82px;height:82px;margin:auto;border-width:14px;animation:fwLaunchSpin .72s var(--fw-spring) both}.fw-launch-wheel:before,.fw-loader-wheel:before,.fw-success-wheel:before,.fw-pull-wheel:before{content:"";position:absolute;inset:27%;border:5px solid #fff;border-radius:50%;box-shadow:0 0 0 3px var(--fw-yellow)}.fw-launch-wheel:after{content:"";position:absolute;left:10%;right:10%;height:8px;bottom:-25px;border-radius:50%;background:#000;filter:blur(5px);animation:fwGrip .72s ease}.fw-launch-name{margin-top:28px;font-size:22px;font-weight:900;letter-spacing:-.4px}.fw-launch-name span{color:var(--fw-yellow)}.fw-launch-sub{margin-top:4px;color:#aebdcd;font-size:11px;letter-spacing:.12em;text-transform:uppercase}
.fw-entry{animation:fwRise .42s var(--fw-motion) both}.fw-entry:nth-child(2){animation-delay:.035s}.fw-entry:nth-child(3){animation-delay:.07s}.fw-entry:nth-child(4){animation-delay:.105s}.fw-entry:nth-child(5){animation-delay:.14s}.fw-entry:nth-child(6){animation-delay:.175s}
.btn,.quick-actions a,.mobile-bottom a,.mobile-bottom button,.nav-link,.icon-btn{position:relative;overflow:hidden;transform:translateZ(0);transition:transform .16s var(--fw-spring),box-shadow .18s ease,filter .18s ease}.fw-press{transform:scale(.965)!important;filter:saturate(1.08)}.fw-ripple{position:absolute!important;width:14px;height:14px;border-radius:50%;background:currentColor;opacity:.16;pointer-events:none;transform:translate(-50%,-50%) scale(.2);animation:fwRipple .45s ease-out forwards}@keyframes fwRipple{to{opacity:0;transform:translate(-50%,-50%) scale(13)}}
.mobile-bottom a.active,.mobile-bottom [data-tab].active{color:var(--fw-blue)}.mobile-bottom a.active:after,.mobile-bottom [data-tab].active:after{content:"";position:absolute;top:4px;width:20px;height:4px;border-radius:99px;background:var(--fw-yellow);box-shadow:0 2px 7px rgba(255,181,28,.38)}.mobile-bottom .fab.fw-roll{transform:translateY(-14px) rotate(32deg) scale(.94)}.mini-wheel,.wheel-mark{display:inline-grid;place-items:center;transition:transform .35s var(--fw-motion)}.mobile-brand:active .mini-wheel,.brand-block:hover .wheel-mark{transform:rotate(55deg)}
.fw-working{position:fixed;inset:0;z-index:9988;background:rgba(6,21,38,.34);backdrop-filter:blur(2px);display:grid;place-items:center}.fw-working-box{background:#fff;border-radius:18px;min-width:142px;padding:20px 22px;text-align:center;box-shadow:0 24px 60px rgba(5,20,38,.25);font-size:11px;font-weight:800;color:#29425f}.fw-loader-wheel{width:42px;height:42px;border-width:8px;margin:0 auto 11px;animation:fwSpin .68s linear infinite}.fw-loader-wheel:before{border-width:3px;box-shadow:0 0 0 2px var(--fw-yellow)}
.fw-success-toast{position:fixed;left:50%;bottom:88px;z-index:9990;display:flex;align-items:center;gap:10px;padding:10px 14px 10px 10px;max-width:min(360px,calc(100vw - 24px));border-radius:16px;background:#0d2d28;color:#fff;box-shadow:0 16px 38px rgba(7,34,31,.28);animation:fwToast .32s var(--fw-spring) both}.fw-success-wheel{width:34px;height:34px;flex:0 0 auto;border-width:6px;border-color:#133d36;box-shadow:inset 0 0 0 3px #2dd184}.fw-success-wheel:before{inset:30%;border:0;box-shadow:none;background:transparent}.fw-success-wheel:after{content:"✓";position:absolute;inset:0;display:grid;place-items:center;font-weight:1000;color:white;font-size:17px;animation:fwTick .34s .12s var(--fw-spring) both}.fw-success-toast b{display:block;font-size:11px}.fw-success-toast small{display:block;color:#b9ded6;margin-top:2px;font-size:9px}
.low-stock,.fw-low-stock{animation:fwPulse 1.35s ease 1}.low-stock .metric-icon,.fw-low-stock .metric-icon,.low-stock [data-stock-icon],.fw-low-stock [data-stock-icon]{animation:fwShake .45s ease}.fw-payment-pulse{animation:fwPulse .85s ease}.fw-stock-in{animation:fwStockIn .38s var(--fw-motion)}.fw-stock-out{animation:fwStockOut .34s ease}.fw-service-done{animation:fwPulse .7s ease}
.fw-pull{position:fixed;top:calc(env(safe-area-inset-top) + 6px);left:50%;z-index:9977;transform:translate(-50%,-58px);transition:transform .16s var(--fw-motion);display:flex;align-items:center;gap:8px;border-radius:999px;background:#fff;color:#42566e;padding:7px 11px 7px 8px;box-shadow:0 7px 24px rgba(9,31,55,.16);font-size:9px;font-weight:800;pointer-events:none}.fw-pull.show{transform:translate(-50%,0)}.fw-pull.ready .fw-pull-wheel{transform:rotate(180deg)}.fw-pull-wheel{width:24px;height:24px;border-width:5px;box-shadow:inset 0 0 0 2px var(--fw-yellow);transition:transform .2s var(--fw-motion)}.fw-pull-wheel:before{border-width:2px;box-shadow:none}
@media(max-width:900px){.metric-card,.panel,.quick-panel,.card{will-change:transform,opacity}.fw-success-toast{bottom:82px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}.fw-launch-wheel,.fw-loader-wheel{animation:none!important}}