@media (pointer:coarse){button,a[href],[role=button],[role=tab],[role=link],input[type=checkbox],input[type=radio],select,textarea,label[for]{min-width:44px;min-height:44px}button.icon-btn,a.icon-btn{justify-content:center;align-items:center;min-width:44px;min-height:44px;display:inline-flex}}@supports (padding:env(safe-area-inset-top)){.safe-area-top{padding-top:env(safe-area-inset-top)}.safe-area-bottom{padding-bottom:env(safe-area-inset-bottom)}.safe-area-left{padding-left:env(safe-area-inset-left)}.safe-area-right{padding-right:env(safe-area-inset-right)}.safe-area-all{padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom);padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}}.ios-scroll{-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.pull-indicator{background:var(--s0);width:40px;height:40px;box-shadow:var(--shadow2);transition:transform .3s var(--ease-out);z-index:100;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;top:-60px;left:50%;transform:translate(-50%)}.pull-indicator.visible{transform:translate(-50%)translateY(80px)}.pull-indicator svg{width:20px;height:20px;color:var(--amber)}.swipe-action{color:#fff;z-index:10;justify-content:center;align-items:center;width:80px;font-size:13px;font-weight:700;transition:opacity .2s;display:flex;position:absolute;top:0;bottom:0}.swipe-action.left{border-radius:var(--r3) 0 0 var(--r3);left:0}.swipe-action.right{border-radius:0 var(--r3) var(--r3) 0;right:0}.swipe-action.save{background:var(--green)}.swipe-action.dismiss{background:var(--red)}.swipe-action.archive{background:var(--blue)}.bottom-sheet{background:var(--s0);border-radius:var(--r4) var(--r4) 0 0;padding:16px;padding-bottom:calc(16px + env(safe-area-inset-bottom));z-index:100;transition:transform .3s var(--ease-out);-webkit-overflow-scrolling:touch;max-height:85vh;position:fixed;bottom:0;left:0;right:0;overflow-y:auto;transform:translateY(100%);box-shadow:0 -8px 30px #00000026}.bottom-sheet.open{transform:translateY(0)}.bottom-sheet-handle{background:var(--s4);border-radius:2px;width:36px;height:4px;margin:0 auto 16px}.drawer-overlay{z-index:90;opacity:0;pointer-events:none;background:#0006;transition:opacity .3s;position:fixed;inset:0}.drawer-overlay.open{opacity:1;pointer-events:auto}.drawer{background:var(--s0);z-index:95;width:300px;max-width:85vw;transition:transform .3s var(--ease-out);-webkit-overflow-scrolling:touch;position:fixed;top:0;bottom:0;overflow-y:auto}.drawer.left{border-radius:0 var(--r4) var(--r4) 0;left:0;transform:translate(-100%)}.drawer.right{border-radius:var(--r4) 0 0 var(--r4);right:0;transform:translate(100%)}.drawer.open{transform:translate(0)}.fab{bottom:calc(80px + env(safe-area-inset-bottom));background:var(--grad);color:#fff;z-index:80;width:56px;height:56px;transition:transform .2s var(--ease-out), box-shadow .2s ease;cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;display:flex;position:fixed;right:16px;box-shadow:0 4px 16px #f25b9a66}.fab:active{transform:scale(.92);box-shadow:0 2px 8px #f25b9a4d}.fab svg{width:24px;height:24px}@media (max-width:768px){input,select,textarea{max-width:100%;font-size:16px!important}input[type=number],input[type=tel]{input-mode:numeric}input[type=email]{input-mode:email}input[type=url]{input-mode:url}select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%238a7f93' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;padding-right:36px}input[type=checkbox],input[type=radio]{width:22px;height:22px;accent-color:var(--amber)}.glass-panel{border-radius:var(--r3);padding:14px}.deal-card{border-radius:var(--r3)}.card-full-bleed{border-radius:0;margin-left:-16px;margin-right:-16px}}@media (min-width:640px) and (max-width:1023px){.tablet-grid-2{grid-template-columns:repeat(2,1fr);gap:16px;display:grid}.tablet-grid-3{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.tablet-sidebar{gap:24px;display:flex}.tablet-sidebar>aside{flex-shrink:0;width:240px}.tablet-sidebar>main{flex:1;min-width:0}}@media (max-width:768px){.mobile-nav-drawer{background:var(--s0);z-index:95;width:280px;max-width:80vw;transition:transform .3s var(--ease-out);-webkit-overflow-scrolling:touch;padding:16px;padding-top:calc(16px + env(safe-area-inset-top));position:fixed;top:0;bottom:0;left:0;overflow-y:auto;transform:translate(-100%)}.mobile-nav-drawer.open{transform:translate(0)}.mobile-nav-overlay{z-index:90;opacity:0;pointer-events:none;background:#0006;transition:opacity .3s;position:fixed;inset:0}.mobile-nav-overlay.open{opacity:1;pointer-events:auto}}@media (pointer:coarse){.touch-feedback{transition:transform .15s var(--ease-out), background-color .15s ease}.touch-feedback:active{transform:scale(.97)}.deal-card{cursor:pointer;-webkit-tap-highlight-color:transparent}.deal-card:active{transition:transform .15s var(--ease-out);transform:scale(.98)}}@keyframes haptic{0%,to{transform:translate(0)}25%{transform:translate(-2px)}75%{transform:translate(2px)}}.haptic{animation:.15s haptic}@keyframes mobile-skeleton{0%{background-position:-200% 0}to{background-position:200% 0}}.mobile-skeleton{background:linear-gradient(90deg, var(--s2) 25%, var(--s3) 50%, var(--s2) 75%);border-radius:var(--r2);background-size:200% 100%;animation:1.5s linear infinite mobile-skeleton}.empty-state-mobile{text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:48px 24px;display:flex}.empty-state-mobile .icon{background:var(--s2);border-radius:16px;justify-content:center;align-items:center;width:64px;height:64px;margin-bottom:16px;display:flex}.empty-state-mobile .icon svg{width:28px;height:28px;color:var(--t4)}.empty-state-mobile h3{color:var(--t1);margin-bottom:6px;font-size:17px;font-weight:700}.empty-state-mobile p{color:var(--t4);max-width:280px;font-size:14px;line-height:1.5}@keyframes success-pop{0%{opacity:0;transform:scale(.8)}50%{transform:scale(1.05)}to{opacity:1;transform:scale(1)}}.success-pop{animation:success-pop .4s var(--ease-out)}@media (max-width:768px){.toast-mobile{bottom:calc(80px + env(safe-area-inset-bottom));border-radius:var(--r3);background:var(--s0);box-shadow:var(--shadow);z-index:200;animation:slideUp .3s var(--ease-out);align-items:center;gap:12px;padding:14px 16px;display:flex;position:fixed;left:16px;right:16px}}.network-status{text-align:center;z-index:300;transition:transform .3s var(--ease-out);padding:8px 16px;font-size:13px;font-weight:600;position:fixed;top:0;left:0;right:0;transform:translateY(-100%)}.network-status.offline{background:var(--red);color:#fff;transform:translateY(0)}.network-status.online{background:var(--green);color:#fff;transform:translateY(0)}.offline-banner{bottom:calc(72px + env(safe-area-inset-bottom));border-radius:var(--r3);background:var(--s0);border:1px solid var(--b1);box-shadow:var(--shadow2);z-index:150;animation:slideUp .3s var(--ease-out);align-items:center;gap:12px;padding:12px 16px;display:flex;position:fixed;left:16px;right:16px}.offline-banner .icon{background:var(--rlo);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.offline-banner .icon svg{width:18px;height:18px;color:var(--red)}.offline-banner .text{flex:1;min-width:0}.offline-banner .text .title{color:var(--t1);font-size:13px;font-weight:700}.offline-banner .text .subtitle{color:var(--t4);font-size:12px}img{content-visibility:auto}img[loading=lazy]{background:var(--s2);border-radius:var(--r2)}.img-blur-up{filter:blur(10px);transition:filter .3s}.img-blur-up.loaded{filter:blur()}@media (max-width:768px){.glass-panel,.deal-card{will-change:auto;backface-visibility:visible;transform:none}.glass-panel{box-shadow:var(--shadow2)}[style*=backdrop-filter]{-webkit-backdrop-filter:blur(12px)saturate(150%)}}@media (prefers-contrast:high){.glass-panel{border-width:2px}.btn{border:2px solid}}@media (prefers-reduced-transparency:reduce){.glass-panel{background:var(--s0);-webkit-backdrop-filter:none}[style*=backdrop-filter]{-webkit-backdrop-filter:none;background:var(--s0)}}@media (pointer:fine){:focus-visible{outline:2px solid var(--amber);outline-offset:2px;border-radius:var(--r1)}}.skip-link{background:var(--grad);color:#fff;border-radius:0 0 var(--r3) var(--r3);z-index:1000;padding:12px 20px;font-weight:700;transition:top .2s;position:absolute;top:-100%;left:16px}.skip-link:focus{top:0}@keyframes page-enter{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.page-enter{animation:page-enter .3s var(--ease-out)}@media (max-width:768px){.mobile-list{-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.mobile-list-item{border-bottom:1px solid var(--b1);padding:14px 16px;transition:background-color .15s}.mobile-list-item:active{background:var(--s2)}.mobile-list-item:last-child{border-bottom:none}}.mobile-sticky-header{z-index:50;background:var(--glass);-webkit-backdrop-filter:blur(18px)saturate(180%);border-bottom:1px solid var(--b1);padding-top:env(safe-area-inset-top);position:sticky;top:0}.mobile-search{top:calc(56px + env(safe-area-inset-top));z-index:40;background:var(--glass);-webkit-backdrop-filter:blur(18px)saturate(180%);border-bottom:1px solid var(--b1);padding:12px 16px;position:sticky}.mobile-search input{border:1.5px solid var(--b1);background:var(--s1);width:100%;height:44px;color:var(--t1);border-radius:22px;outline:none;padding:0 16px 0 44px;font-size:16px;transition:border-color .2s}.mobile-search input:focus{border-color:var(--amber)}.mobile-search .search-icon{width:20px;height:20px;color:var(--t4);pointer-events:none;position:absolute;top:50%;left:32px;transform:translateY(-50%)}.mobile-filter-chips{-webkit-overflow-scrolling:touch;scrollbar-width:none;scroll-snap-type:x mandatory;gap:8px;padding:12px 16px;display:flex;overflow-x:auto}.mobile-filter-chips::-webkit-scrollbar{display:none}.mobile-filter-chips .chip{border:1.5px solid var(--b1);background:var(--s0);color:var(--t3);white-space:nowrap;scroll-snap-align:start;cursor:pointer;border-radius:20px;flex-shrink:0;padding:8px 16px;font-size:13px;font-weight:600;transition:all .2s}.mobile-filter-chips .chip.active{background:var(--grad);color:#fff;border-color:#0000}.mobile-tab-bar{-webkit-overflow-scrolling:touch;scrollbar-width:none;border-bottom:1px solid var(--b1);background:var(--s0);display:flex;overflow-x:auto}.mobile-tab-bar::-webkit-scrollbar{display:none}.mobile-tab-bar .tab{min-width:80px;color:var(--t4);text-align:center;white-space:nowrap;cursor:pointer;border-bottom:2px solid #0000;flex:1;padding:12px 16px;font-size:13px;font-weight:600;transition:all .2s}.mobile-tab-bar .tab.active{color:var(--amber);border-bottom-color:var(--amber)}.action-sheet{background:var(--s0);border-radius:var(--r4) var(--r4) 0 0;padding:8px;padding-bottom:calc(8px + env(safe-area-inset-bottom));z-index:100;transition:transform .3s var(--ease-out);position:fixed;bottom:0;left:0;right:0;transform:translateY(100%)}.action-sheet.open{transform:translateY(0)}.action-sheet .handle{background:var(--s4);border-radius:2px;width:36px;height:4px;margin:8px auto 16px}.action-sheet .item{border-radius:var(--r2);color:var(--t1);cursor:pointer;align-items:center;gap:12px;padding:14px 16px;font-size:15px;font-weight:600;transition:background-color .15s;display:flex}.action-sheet .item:active{background:var(--s2)}.action-sheet .item.destructive{color:var(--red)}.swipe-card{touch-action:pan-y;-webkit-user-select:none;user-select:none;position:relative;overflow:hidden}.swipe-card .swipe-content{transition:transform .3s var(--ease-out)}.swipe-card .swipe-actions{color:#fff;opacity:0;align-items:center;padding:0 16px;font-size:14px;font-weight:700;transition:opacity .2s;display:flex;position:absolute;top:0;bottom:0}.swipe-card .swipe-actions.left{background:var(--green);border-radius:var(--r3) 0 0 var(--r3);left:0}.swipe-card .swipe-actions.right{background:var(--red);border-radius:0 var(--r3) var(--r3) 0;right:0}.swipe-card.swiping-left .swipe-actions.left,.swipe-card.swiping-right .swipe-actions.right{opacity:1}.pull-to-refresh{position:relative;overflow:hidden}.pull-to-refresh .pull-indicator{background:var(--s0);width:36px;height:36px;box-shadow:var(--shadow2);transition:transform .3s var(--ease-out);z-index:10;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;top:-50px;left:50%;transform:translate(-50%)}.pull-to-refresh.pulling .pull-indicator{transform:translate(-50%)translateY(70px)}.pull-to-refresh .pull-indicator svg{width:18px;height:18px;color:var(--amber);transition:transform .3s}.pull-to-refresh.pulling .pull-indicator svg{transform:rotate(180deg)}.infinite-scroll-sentinel{width:100%;height:1px}.infinite-scroll-loading{color:var(--t4);justify-content:center;align-items:center;gap:12px;padding:24px;font-size:14px;display:flex}.infinite-scroll-loading .spinner{border:2px solid var(--s3);border-top-color:var(--amber);border-radius:50%;width:20px;height:20px;animation:.8s linear infinite spin}.skeleton-mobile{padding:16px}.skeleton-mobile .skeleton-header{align-items:center;gap:12px;margin-bottom:16px;display:flex}.skeleton-mobile .skeleton-avatar{border-radius:50%;width:40px;height:40px}.skeleton-mobile .skeleton-lines{flex:1}.skeleton-mobile .skeleton-line{border-radius:6px;height:12px;margin-bottom:8px}.skeleton-mobile .skeleton-line:last-child{width:60%}.skeleton-mobile .skeleton-content{border-radius:var(--r3);height:120px}.error-state-mobile{text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:48px 24px;display:flex}.error-state-mobile .icon{background:var(--rlo);border-radius:16px;justify-content:center;align-items:center;width:64px;height:64px;margin-bottom:16px;display:flex}.error-state-mobile .icon svg{width:28px;height:28px;color:var(--red)}.error-state-mobile h3{color:var(--t1);margin-bottom:6px;font-size:17px;font-weight:700}.error-state-mobile p{color:var(--t4);max-width:280px;margin-bottom:20px;font-size:14px;line-height:1.5}.error-state-mobile .retry-btn{border-radius:var(--r3);background:var(--grad);color:#fff;cursor:pointer;border:none;padding:12px 24px;font-size:15px;font-weight:700;transition:transform .15s}.error-state-mobile .retry-btn:active{transform:scale(.97)}.confirm-dialog-mobile{background:var(--s0);border-radius:var(--r4) var(--r4) 0 0;padding:24px 16px;padding-bottom:calc(24px + env(safe-area-inset-bottom));z-index:100;transition:transform .3s var(--ease-out);position:fixed;bottom:0;left:0;right:0;transform:translateY(100%)}.confirm-dialog-mobile.open{transform:translateY(0)}.confirm-dialog-mobile .handle{background:var(--s4);border-radius:2px;width:36px;height:4px;margin:0 auto 20px}.confirm-dialog-mobile h3{color:var(--t1);text-align:center;margin-bottom:8px;font-size:18px;font-weight:700}.confirm-dialog-mobile p{color:var(--t4);text-align:center;margin-bottom:24px;font-size:14px;line-height:1.5}.confirm-dialog-mobile .actions{gap:12px;display:flex}.confirm-dialog-mobile .actions button{border-radius:var(--r3);cursor:pointer;border:none;flex:1;height:48px;font-size:15px;font-weight:700;transition:transform .15s}.confirm-dialog-mobile .actions button:active{transform:scale(.97)}.confirm-dialog-mobile .actions .cancel{background:var(--s2);color:var(--t2)}.confirm-dialog-mobile .actions .confirm{background:var(--grad);color:#fff}.confirm-dialog-mobile .actions .destructive{background:var(--red);color:#fff}.segmented-control-mobile{background:var(--s2);border-radius:var(--r3);margin:0 16px 16px;padding:2px;display:flex}.segmented-control-mobile .segment{border-radius:var(--r2);color:var(--t4);text-align:center;cursor:pointer;background:0 0;border:none;flex:1;padding:10px 16px;font-size:13px;font-weight:600;transition:all .2s}.segmented-control-mobile .segment.active{background:var(--s0);color:var(--t1);box-shadow:var(--shadow2)}.tooltip-mobile{bottom:calc(80px + env(safe-area-inset-bottom));border-radius:var(--r2);background:var(--s0);box-shadow:var(--shadow);color:var(--t1);z-index:150;white-space:nowrap;padding:10px 16px;font-size:13px;font-weight:600;animation:.2s fadeIn;position:fixed;left:50%;transform:translate(-50%)}.context-menu-mobile{background:var(--s0);border-radius:var(--r4) var(--r4) 0 0;padding:8px;padding-bottom:calc(8px + env(safe-area-inset-bottom));z-index:100;transition:transform .3s var(--ease-out);position:fixed;bottom:0;left:0;right:0;transform:translateY(100%)}.context-menu-mobile.open{transform:translateY(0)}.context-menu-mobile .handle{background:var(--s4);border-radius:2px;width:36px;height:4px;margin:8px auto 16px}.context-menu-mobile .menu-item{border-radius:var(--r2);color:var(--t1);cursor:pointer;align-items:center;gap:12px;padding:14px 16px;font-size:15px;font-weight:600;transition:background-color .15s;display:flex}.context-menu-mobile .menu-item:active{background:var(--s2)}.context-menu-mobile .menu-item.destructive{color:var(--red)}.context-menu-mobile .menu-item svg{width:20px;height:20px;color:var(--t4)}.context-menu-mobile .menu-item.destructive svg{color:var(--red)}.badge-mobile{border-radius:10px;justify-content:center;align-items:center;min-width:20px;height:20px;padding:0 6px;font-size:11px;font-weight:700;line-height:1;display:inline-flex}.badge-mobile.primary{background:var(--grad);color:#fff}.badge-mobile.success{background:var(--green);color:#fff}.badge-mobile.warning{background:var(--orange);color:#fff}.badge-mobile.error{background:var(--red);color:#fff}.progress-mobile{background:var(--s3);border-radius:2px;height:4px;overflow:hidden}.progress-mobile .bar{background:var(--grad);height:100%;transition:width .3s var(--ease-out);border-radius:2px}.rating-mobile{gap:4px;display:flex}.rating-mobile .star{width:20px;height:20px;color:var(--s4);cursor:pointer;transition:color .15s,transform .15s}.rating-mobile .star.filled{color:var(--gold)}.rating-mobile .star:active{transform:scale(1.2)}.toggle-mobile{background:var(--s4);cursor:pointer;border:none;border-radius:16px;width:51px;height:31px;padding:0;transition:background-color .2s;position:relative}.toggle-mobile.active{background:var(--grad)}.toggle-mobile .thumb{width:27px;height:27px;transition:transform .2s var(--ease-out);background:#fff;border-radius:50%;position:absolute;top:2px;left:2px;box-shadow:0 2px 4px #0003}.toggle-mobile.active .thumb{transform:translate(20px)}.chip-input-mobile{border:1.5px solid var(--b1);border-radius:var(--r3);background:var(--s1);flex-wrap:wrap;gap:8px;padding:12px;display:flex}.chip-input-mobile .chip{background:var(--s2);color:var(--t2);border-radius:16px;align-items:center;gap:6px;padding:6px 12px;font-size:13px;font-weight:600;display:inline-flex}.chip-input-mobile .chip .remove{background:var(--s4);cursor:pointer;width:16px;height:16px;color:var(--t4);border-radius:50%;justify-content:center;align-items:center;font-size:10px;display:flex}.chip-input-mobile input{min-width:100px;color:var(--t1);background:0 0;border:none;outline:none;flex:1;font-size:14px}.slider-mobile{align-items:center;height:44px;display:flex;position:relative}.slider-mobile .track{background:var(--s3);border-radius:2px;width:100%;height:4px;position:relative}.slider-mobile .fill{background:var(--grad);border-radius:2px;height:100%;position:absolute}.slider-mobile .thumb{width:24px;height:24px;box-shadow:var(--shadow2);cursor:pointer;background:#fff;border-radius:50%;transition:transform .15s;position:absolute;transform:translate(-50%)}.slider-mobile .thumb:active{transform:translate(-50%)scale(1.2)}.stepper-mobile{align-items:center;gap:16px;display:flex}.stepper-mobile .step-btn{background:var(--s2);width:44px;height:44px;color:var(--t2);cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;font-size:20px;font-weight:700;transition:all .15s;display:flex}.stepper-mobile .step-btn:active{background:var(--s3);transform:scale(.95)}.stepper-mobile .step-value{color:var(--t1);text-align:center;min-width:40px;font-size:18px;font-weight:700}.accordion-mobile{border:1px solid var(--b1);border-radius:var(--r3);margin-bottom:8px;overflow:hidden}.accordion-mobile .accordion-header{background:var(--s0);cursor:pointer;justify-content:space-between;align-items:center;padding:16px;transition:background-color .15s;display:flex}.accordion-mobile .accordion-header:active{background:var(--s2)}.accordion-mobile .accordion-header h4{color:var(--t1);font-size:15px;font-weight:600}.accordion-mobile .accordion-header svg{width:20px;height:20px;color:var(--t4);transition:transform .2s}.accordion-mobile .accordion-header.open svg{transform:rotate(180deg)}.accordion-mobile .accordion-content{max-height:0;transition:max-height .3s var(--ease-out);background:var(--s0);overflow:hidden}.accordion-mobile .accordion-content.open{max-height:500px}.accordion-mobile .accordion-content .inner{border-top:1px solid var(--b1);padding:16px}.tabs-mobile{border-bottom:1px solid var(--b1);background:var(--s0);-webkit-overflow-scrolling:touch;scrollbar-width:none;display:flex;overflow-x:auto}.tabs-mobile::-webkit-scrollbar{display:none}.tabs-mobile .tab{min-width:80px;color:var(--t4);text-align:center;white-space:nowrap;cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;flex:1;padding:14px 16px;font-size:13px;font-weight:600;transition:all .2s}.tabs-mobile .tab.active{color:var(--amber);border-bottom-color:var(--amber)}.breadcrumb-mobile{-webkit-overflow-scrolling:touch;scrollbar-width:none;align-items:center;gap:8px;padding:12px 16px;display:flex;overflow-x:auto}.breadcrumb-mobile::-webkit-scrollbar{display:none}.breadcrumb-mobile .crumb{color:var(--t4);white-space:nowrap;cursor:pointer;font-size:13px;font-weight:600}.breadcrumb-mobile .crumb.active{color:var(--t1)}.breadcrumb-mobile .separator{color:var(--t5);flex-shrink:0;font-size:12px}.pagination-mobile{justify-content:center;align-items:center;gap:8px;padding:16px;display:flex}.pagination-mobile .page-btn{width:40px;height:40px;color:var(--t3);background:var(--s0);border:1px solid var(--b1);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;font-size:14px;font-weight:600;transition:all .15s;display:flex}.pagination-mobile .page-btn:active{background:var(--s2)}.pagination-mobile .page-btn.active{background:var(--grad);color:#fff;border-color:#0000}.pagination-mobile .page-btn:disabled{opacity:.5;cursor:default}.data-table-mobile{border-collapse:collapse;width:100%}.data-table-mobile th{text-align:left;text-transform:uppercase;letter-spacing:.05em;color:var(--t4);background:var(--s1);border-bottom:1px solid var(--b1);white-space:nowrap;padding:12px 16px;font-size:11px;font-weight:700}.data-table-mobile td{color:var(--t2);border-bottom:1px solid var(--b1);padding:12px 16px;font-size:14px}.data-table-mobile tr:active td{background:var(--s2)}.data-table-mobile .sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.data-table-mobile .sortable:active{color:var(--amber)}.card-list-mobile{flex-direction:column;gap:12px;padding:16px;display:flex}.card-list-mobile .card-item{background:var(--s0);border:1px solid var(--b1);border-radius:var(--r3);cursor:pointer;padding:16px;transition:all .15s}.card-list-mobile .card-item:active{background:var(--s2);transform:scale(.98)}.card-list-mobile .card-item .card-header{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.card-list-mobile .card-item .card-title{color:var(--t1);font-size:15px;font-weight:700}.card-list-mobile .card-item .card-subtitle{color:var(--t4);margin-bottom:12px;font-size:13px}.card-list-mobile .card-item .card-footer{justify-content:space-between;align-items:center;display:flex}.stat-card-mobile{background:var(--s0);border:1px solid var(--b1);border-radius:var(--r3);text-align:center;padding:16px}.stat-card-mobile .stat-value{color:var(--t1);margin-bottom:4px;font-size:28px;font-weight:800;line-height:1}.stat-card-mobile .stat-label{color:var(--t4);text-transform:uppercase;letter-spacing:.05em;font-size:12px;font-weight:600}.stat-card-mobile .stat-change{align-items:center;gap:4px;margin-top:8px;font-size:12px;font-weight:700;display:inline-flex}.stat-card-mobile .stat-change.positive{color:var(--green)}.stat-card-mobile .stat-change.negative{color:var(--red)}.view-toggle-mobile{border-radius:var(--r2);background:var(--s2);align-items:center;gap:4px;padding:2px;display:flex}.view-toggle-mobile .toggle-btn{border-radius:var(--r1);width:36px;height:36px;color:var(--t4);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;transition:all .2s;display:flex}.view-toggle-mobile .toggle-btn.active{background:var(--s0);color:var(--t1);box-shadow:var(--shadow2)}.view-toggle-mobile .toggle-btn svg{width:18px;height:18px}.list-view-mobile{background:var(--s0);border-radius:var(--r3);border:1px solid var(--b1);overflow:hidden}.list-view-mobile .list-item{border-bottom:1px solid var(--b1);cursor:pointer;align-items:center;gap:12px;padding:14px 16px;transition:background-color .15s;display:flex}.list-view-mobile .list-item:active{background:var(--s2)}.list-view-mobile .list-item:last-child{border-bottom:none}.list-view-mobile .list-item .item-icon{background:var(--s2);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.list-view-mobile .list-item .item-icon svg{width:20px;height:20px;color:var(--t4)}.list-view-mobile .list-item .item-content{flex:1;min-width:0}.list-view-mobile .list-item .item-title{color:var(--t1);white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:600;overflow:hidden}.list-view-mobile .list-item .item-subtitle{color:var(--t4);white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.list-view-mobile .list-item .item-action{color:var(--t5);flex-shrink:0}.grid-view-mobile{grid-template-columns:repeat(2,1fr);gap:12px;padding:16px;display:grid}.grid-view-mobile .grid-item{background:var(--s0);border:1px solid var(--b1);border-radius:var(--r3);cursor:pointer;transition:all .15s;overflow:hidden}.grid-view-mobile .grid-item:active{transform:scale(.98)}.grid-view-mobile .grid-item .item-image{aspect-ratio:4/3;background:var(--s2);overflow:hidden}.grid-view-mobile .grid-item .item-image img{-o-object-fit:cover;object-fit:cover;width:100%;height:100%}.grid-view-mobile .grid-item .item-content{padding:12px}.grid-view-mobile .grid-item .item-title{color:var(--t1);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-bottom:4px;font-size:14px;font-weight:600;display:-webkit-box;overflow:hidden}.grid-view-mobile .grid-item .item-subtitle{color:var(--t4);font-size:12px}.carousel-mobile{-webkit-overflow-scrolling:touch;scroll-snap-type:x mandatory;scrollbar-width:none;gap:12px;padding:16px;display:flex;overflow-x:auto}.carousel-mobile::-webkit-scrollbar{display:none}.carousel-mobile .carousel-item{scroll-snap-align:start;background:var(--s0);border:1px solid var(--b1);border-radius:var(--r3);cursor:pointer;flex-shrink:0;width:280px;transition:all .15s;overflow:hidden}.carousel-mobile .carousel-item:active{transform:scale(.98)}.carousel-mobile .carousel-item img{aspect-ratio:16/9;-o-object-fit:cover;object-fit:cover;width:100%}.carousel-mobile .carousel-item .item-content{padding:12px}.hero-mobile{text-align:center;background:var(--s1);padding:32px 16px;position:relative;overflow:hidden}.hero-mobile .hero-content{z-index:1;position:relative}.hero-mobile .hero-title{color:var(--t1);margin-bottom:12px;font-size:28px;font-weight:800;line-height:1.2}.hero-mobile .hero-subtitle{color:var(--t4);max-width:320px;margin:0 auto 24px;font-size:15px;line-height:1.5}.hero-mobile .hero-cta{border-radius:var(--r3);background:var(--grad);color:#fff;cursor:pointer;border:none;justify-content:center;align-items:center;height:48px;padding:0 24px;font-size:15px;font-weight:700;transition:transform .15s;display:inline-flex}.hero-mobile .hero-cta:active{transform:scale(.97)}.section-mobile{padding:24px 16px}.section-mobile .section-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.section-mobile .section-title{color:var(--t1);font-size:18px;font-weight:700}.section-mobile .section-action{color:var(--amber);cursor:pointer;font-size:14px;font-weight:600}.divider-mobile{background:var(--b1);height:1px;margin:16px 0}.spacer-mobile{height:80px}@media (min-width:768px){.spacer-mobile{height:0}}.sticky-bottom-mobile{padding:12px 16px;padding-bottom:calc(12px + env(safe-area-inset-bottom));background:var(--glass);-webkit-backdrop-filter:blur(18px)saturate(180%);border-top:1px solid var(--b1);z-index:50;gap:12px;display:flex;position:fixed;bottom:0;left:0;right:0}.sticky-bottom-mobile button{border-radius:var(--r3);cursor:pointer;border:none;flex:1;height:48px;font-size:15px;font-weight:700;transition:transform .15s}.sticky-bottom-mobile button:active{transform:scale(.98)}.sticky-bottom-mobile .btn-secondary{background:var(--s2);color:var(--t2)}.sticky-bottom-mobile .btn-primary{background:var(--grad);color:#fff}.sticky-top-mobile{z-index:50;padding:12px 16px;padding-top:calc(12px + env(safe-area-inset-top));background:var(--glass);-webkit-backdrop-filter:blur(18px)saturate(180%);border-bottom:1px solid var(--b1);align-items:center;gap:12px;display:flex;position:sticky;top:0}.sticky-top-mobile .back-btn{background:var(--s2);cursor:pointer;width:40px;height:40px;color:var(--t3);border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.sticky-top-mobile .title{color:var(--t1);white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:17px;font-weight:700;overflow:hidden}.sticky-top-mobile .action-btn{background:var(--s2);cursor:pointer;width:40px;height:40px;color:var(--t3);border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.content-mobile{padding:16px;padding-bottom:calc(16px + 80px + env(safe-area-inset-bottom))}@media (min-width:768px){.content-mobile{padding:24px}}.page-header-mobile{padding:16px;padding-top:calc(16px + env(safe-area-inset-top));background:var(--s0);border-bottom:1px solid var(--b1)}.page-header-mobile .header-content{align-items:center;gap:12px;display:flex}.page-header-mobile .back-btn{background:var(--s2);cursor:pointer;width:40px;height:40px;color:var(--t3);border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.page-header-mobile .header-text{flex:1;min-width:0}.page-header-mobile .header-title{color:var(--t1);white-space:nowrap;text-overflow:ellipsis;font-size:18px;font-weight:700;overflow:hidden}.page-header-mobile .header-subtitle{color:var(--t4);white-space:nowrap;text-overflow:ellipsis;font-size:13px;overflow:hidden}.search-header-mobile{z-index:50;padding:12px 16px;padding-top:calc(12px + env(safe-area-inset-top));background:var(--glass);-webkit-backdrop-filter:blur(18px)saturate(180%);border-bottom:1px solid var(--b1);position:sticky;top:0}.search-header-mobile .search-bar{position:relative}.search-header-mobile .search-bar input{border:1.5px solid var(--b1);background:var(--s1);width:100%;height:44px;color:var(--t1);border-radius:22px;outline:none;padding:0 16px 0 44px;font-size:16px;transition:border-color .2s}.search-header-mobile .search-bar input:focus{border-color:var(--amber)}.search-header-mobile .search-bar .search-icon{width:20px;height:20px;color:var(--t4);pointer-events:none;position:absolute;top:50%;left:14px;transform:translateY(-50%)}.search-header-mobile .search-bar .clear-btn{background:var(--s3);cursor:pointer;width:28px;height:28px;color:var(--t4);border:none;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.filter-bar-mobile{-webkit-overflow-scrolling:touch;scrollbar-width:none;background:var(--s0);border-bottom:1px solid var(--b1);align-items:center;gap:8px;padding:12px 16px;display:flex;overflow-x:auto}.filter-bar-mobile::-webkit-scrollbar{display:none}.filter-bar-mobile .filter-btn{border:1.5px solid var(--b1);background:var(--s0);color:var(--t3);white-space:nowrap;cursor:pointer;border-radius:20px;flex-shrink:0;align-items:center;gap:6px;padding:8px 14px;font-size:13px;font-weight:600;transition:all .2s;display:inline-flex}.filter-bar-mobile .filter-btn:active{background:var(--s2)}.filter-bar-mobile .filter-btn.active{background:var(--grad);color:#fff;border-color:#0000}.filter-bar-mobile .filter-btn svg{width:14px;height:14px}.sort-bar-mobile{background:var(--s0);border-bottom:1px solid var(--b1);justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.sort-bar-mobile .results-count{color:var(--t4);font-size:13px}.sort-bar-mobile .sort-btn{border-radius:var(--r2);color:var(--t3);cursor:pointer;background:0 0;border:none;align-items:center;gap:6px;padding:8px 12px;font-size:13px;font-weight:600;display:inline-flex}.sort-bar-mobile .sort-btn:active{background:var(--s2)}.sort-bar-mobile .sort-btn svg{width:14px;height:14px}.bulk-actions-mobile{bottom:calc(72px + env(safe-area-inset-bottom));border-radius:var(--r3);background:var(--s0);box-shadow:var(--shadow);z-index:60;animation:slideUp .3s var(--ease-out);align-items:center;gap:12px;padding:12px 16px;display:flex;position:fixed;left:16px;right:16px}.bulk-actions-mobile .selected-count{color:var(--t1);flex:1;font-size:14px;font-weight:600}.bulk-actions-mobile .action-btn{border-radius:var(--r2);cursor:pointer;border:none;padding:8px 16px;font-size:13px;font-weight:600;transition:all .15s}.bulk-actions-mobile .action-btn:active{transform:scale(.95)}.bulk-actions-mobile .action-btn.primary{background:var(--grad);color:#fff}.bulk-actions-mobile .action-btn.secondary{background:var(--s2);color:var(--t2)}.bulk-actions-mobile .action-btn.destructive{background:var(--red);color:#fff}.context-bar-mobile{bottom:calc(72px + env(safe-area-inset-bottom));border-radius:var(--r3);background:var(--s0);box-shadow:var(--shadow);z-index:60;animation:slideUp .3s var(--ease-out);align-items:center;gap:12px;padding:12px 16px;display:flex;position:fixed;left:16px;right:16px}.context-bar-mobile .context-info{flex:1;min-width:0}.context-bar-mobile .context-title{color:var(--t1);white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:700;overflow:hidden}.context-bar-mobile .context-subtitle{color:var(--t4);white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.context-bar-mobile .context-actions{flex-shrink:0;gap:8px;display:flex}.context-bar-mobile .context-actions button{cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;transition:all .15s;display:flex}.context-bar-mobile .context-actions button:active{transform:scale(.9)}.context-bar-mobile .context-actions .save-btn{background:var(--amber-lo);color:var(--amber)}.context-bar-mobile .context-actions .share-btn{background:var(--blo);color:var(--blue)}.context-bar-mobile .context-actions .more-btn{background:var(--s2);color:var(--t3)}.quick-actions-mobile{bottom:calc(140px + env(safe-area-inset-bottom));z-index:70;flex-direction:column;gap:12px;display:flex;position:fixed;right:16px}.quick-actions-mobile .quick-btn{background:var(--s0);width:48px;height:48px;box-shadow:var(--shadow);cursor:pointer;color:var(--t3);border:none;border-radius:50%;justify-content:center;align-items:center;transition:all .15s;display:flex}.quick-actions-mobile .quick-btn:active{background:var(--s2);transform:scale(.9)}.quick-actions-mobile .quick-btn svg{width:22px;height:22px}.speed-dial-mobile{bottom:calc(140px + env(safe-area-inset-bottom));z-index:70;position:fixed;right:16px}.speed-dial-mobile .main-btn{background:var(--grad);cursor:pointer;color:#fff;width:56px;height:56px;transition:all .2s var(--ease-out);border:none;border-radius:50%;justify-content:center;align-items:center;display:flex;box-shadow:0 4px 16px #f25b9a66}.speed-dial-mobile .main-btn:active{transform:scale(.92)}.speed-dial-mobile .main-btn svg{width:24px;height:24px;transition:transform .2s}.speed-dial-mobile .main-btn.open svg{transform:rotate(45deg)}.speed-dial-mobile .dial-items{opacity:0;pointer-events:none;transition:all .2s var(--ease-out);flex-direction:column;gap:12px;display:flex;position:absolute;bottom:72px;right:0;transform:translateY(10px)}.speed-dial-mobile .dial-items.open{opacity:1;pointer-events:auto;transform:translateY(0)}.speed-dial-mobile .dial-item{align-items:center;gap:12px;display:flex}.speed-dial-mobile .dial-item .label{border-radius:var(--r2);background:var(--s0);box-shadow:var(--shadow2);color:var(--t2);white-space:nowrap;padding:6px 12px;font-size:13px;font-weight:600}.speed-dial-mobile .dial-item .icon-btn{background:var(--s0);width:48px;height:48px;box-shadow:var(--shadow);cursor:pointer;color:var(--t3);border:none;border-radius:50%;justify-content:center;align-items:center;transition:all .15s;display:flex}.speed-dial-mobile .dial-item .icon-btn:active{transform:scale(.9)}.notification-badge-mobile{background:var(--red);color:#fff;border:2px solid var(--s0);border-radius:9px;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 5px;font-size:10px;font-weight:700;line-height:1;display:flex;position:absolute;top:-4px;right:-4px}.connection-status-mobile{text-align:center;z-index:300;transition:transform .3s var(--ease-out);padding:6px 16px;font-size:12px;font-weight:600;position:fixed;top:0;left:0;right:0;transform:translateY(-100%)}.connection-status-mobile.offline{background:var(--red);color:#fff;transform:translateY(0)}.connection-status-mobile.online{background:var(--green);color:#fff;transform:translateY(0)}.splash-screen-mobile{background:var(--s1);z-index:1000;flex-direction:column;justify-content:center;align-items:center;animation:.3s fadeIn;display:flex;position:fixed;inset:0}.splash-screen-mobile .app-name{color:var(--t1);margin-bottom:8px;font-size:24px;font-weight:800}.splash-screen-mobile .tagline{color:var(--t4);margin-bottom:32px;font-size:14px}.app-banner-mobile{padding:12px 16px;padding-top:calc(12px + env(safe-area-inset-top));background:var(--s0);box-shadow:var(--shadow2);z-index:200;transition:transform .3s var(--ease-out);align-items:center;gap:12px;display:flex;position:fixed;top:0;left:0;right:0;transform:translateY(-100%)}.app-banner-mobile.show{transform:translateY(0)}.app-banner-mobile .app-icon{background:var(--grad);border-radius:10px;flex-shrink:0;width:40px;height:40px}.app-banner-mobile .app-info{flex:1;min-width:0}.app-banner-mobile .app-name{color:var(--t1);font-size:14px;font-weight:700}.app-banner-mobile .app-rating{color:var(--t4);font-size:12px}.app-banner-mobile .open-btn{border-radius:var(--r2);background:var(--grad);color:#fff;cursor:pointer;border:none;flex-shrink:0;padding:8px 16px;font-size:13px;font-weight:700}.app-banner-mobile .close-btn{background:var(--s2);cursor:pointer;width:32px;height:32px;color:var(--t4);border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.update-banner-mobile{padding:12px 16px;padding-top:calc(12px + env(safe-area-inset-top));background:var(--grad);color:#fff;z-index:300;transition:transform .3s var(--ease-out);align-items:center;gap:12px;display:flex;position:fixed;top:0;left:0;right:0;transform:translateY(-100%)}.update-banner-mobile.show{transform:translateY(0)}.update-banner-mobile .update-text{flex:1;font-size:13px;font-weight:600}.update-banner-mobile .update-btn{border-radius:var(--r2);color:#fff;cursor:pointer;background:#fff3;border:none;flex-shrink:0;padding:8px 16px;font-size:13px;font-weight:700}.maintenance-mobile{background:var(--s1);z-index:1000;text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:32px;display:flex;position:fixed;inset:0}.maintenance-mobile .icon{background:var(--s2);border-radius:20px;justify-content:center;align-items:center;width:80px;height:80px;margin-bottom:24px;display:flex}.maintenance-mobile .icon svg{width:40px;height:40px;color:var(--t4)}.maintenance-mobile h2{color:var(--t1);margin-bottom:12px;font-size:24px;font-weight:800}.maintenance-mobile p{color:var(--t4);max-width:320px;margin-bottom:24px;font-size:15px;line-height:1.6}.maintenance-mobile .retry-btn{border-radius:var(--r3);background:var(--grad);color:#fff;cursor:pointer;border:none;padding:12px 24px;font-size:15px;font-weight:700}.rate-limit-mobile{background:var(--s1);z-index:1000;text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:32px;display:flex;position:fixed;inset:0}.rate-limit-mobile .icon{background:var(--olo);border-radius:20px;justify-content:center;align-items:center;width:80px;height:80px;margin-bottom:24px;display:flex}.rate-limit-mobile .icon svg{width:40px;height:40px;color:var(--orange)}.rate-limit-mobile h2{color:var(--t1);margin-bottom:12px;font-size:24px;font-weight:800}.rate-limit-mobile p{color:var(--t4);max-width:320px;margin-bottom:24px;font-size:15px;line-height:1.6}.rate-limit-mobile .countdown{color:var(--t1);margin-bottom:24px;font-size:48px;font-weight:800}.rate-limit-mobile .retry-btn{border-radius:var(--r3);background:var(--grad);color:#fff;cursor:pointer;border:none;padding:12px 24px;font-size:15px;font-weight:700}.server-error-mobile{background:var(--s1);z-index:1000;text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:32px;display:flex;position:fixed;inset:0}.server-error-mobile .icon{background:var(--rlo);border-radius:20px;justify-content:center;align-items:center;width:80px;height:80px;margin-bottom:24px;display:flex}.server-error-mobile .icon svg{width:40px;height:40px;color:var(--red)}.server-error-mobile h2{color:var(--t1);margin-bottom:12px;font-size:24px;font-weight:800}.server-error-mobile p{color:var(--t4);max-width:320px;margin-bottom:24px;font-size:15px;line-height:1.6}.server-error-mobile .error-code{color:var(--t5);border-radius:var(--r1);background:var(--s2);margin-bottom:24px;padding:4px 12px;font-size:12px;font-weight:600}.server-error-mobile .retry-btn{border-radius:var(--r3);background:var(--grad);color:#fff;cursor:pointer;border:none;padding:12px 24px;font-size:15px;font-weight:700}.no-results-mobile{text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:48px 24px;display:flex}.no-results-mobile .icon{background:var(--s2);border-radius:20px;justify-content:center;align-items:center;width:80px;height:80px;margin-bottom:16px;display:flex}.no-results-mobile .icon svg{width:36px;height:36px;color:var(--t4)}.no-results-mobile h3{color:var(--t1);margin-bottom:8px;font-size:18px;font-weight:700}.no-results-mobile p{color:var(--t4);max-width:280px;margin-bottom:24px;font-size:14px;line-height:1.5}.no-results-mobile .clear-filters-btn{border-radius:var(--r3);background:var(--grad);color:#fff;cursor:pointer;border:none;padding:12px 24px;font-size:15px;font-weight:700}.loading-more-mobile{color:var(--t4);justify-content:center;align-items:center;gap:12px;padding:24px;font-size:14px;display:flex}.loading-more-mobile .spinner{border:2px solid var(--s3);border-top-color:var(--amber);border-radius:50%;width:20px;height:20px;animation:.8s linear infinite spin}.end-of-list-mobile{text-align:center;color:var(--t5);flex-direction:column;justify-content:center;align-items:center;padding:32px;display:flex}.end-of-list-mobile .icon{background:var(--s2);border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;margin-bottom:12px;display:flex}.end-of-list-mobile .icon svg{width:24px;height:24px}.end-of-list-mobile p{font-size:14px;font-weight:600}.pull-text-mobile{text-align:center;color:var(--t4);padding:16px;font-size:13px;font-weight:600}.refresh-indicator-mobile{color:var(--t4);justify-content:center;align-items:center;gap:8px;padding:16px;font-size:13px;font-weight:600;display:flex}.refresh-indicator-mobile .spinner{border:2px solid var(--s3);border-top-color:var(--amber);border-radius:50%;width:16px;height:16px;animation:.8s linear infinite spin}.swipe-hint-mobile{color:var(--t5);justify-content:center;align-items:center;gap:8px;padding:12px;font-size:12px;font-weight:600;display:flex}.swipe-hint-mobile svg{width:16px;height:16px;animation:1.5s infinite swipeHint}@keyframes swipeHint{0%,to{transform:translate(0)}50%{transform:translate(8px)}}.gesture-hint-mobile{bottom:calc(100px + env(safe-area-inset-bottom));background:var(--s0);box-shadow:var(--shadow2);color:var(--t3);z-index:100;white-space:nowrap;pointer-events:none;border-radius:20px;padding:8px 16px;font-size:12px;font-weight:600;animation:.3s fadeIn,.3s 2s forwards fadeOut;position:fixed;left:50%;transform:translate(-50%)}@keyframes fadeOut{to{opacity:0;visibility:hidden}}.tutorial-overlay-mobile{z-index:500;background:#000c;flex-direction:column;justify-content:center;align-items:center;padding:32px;display:flex;position:fixed;inset:0}.tutorial-overlay-mobile .tutorial-card{background:var(--s0);border-radius:var(--r4);text-align:center;max-width:320px;padding:24px}.tutorial-overlay-mobile .tutorial-card h3{color:var(--t1);margin-bottom:8px;font-size:18px;font-weight:700}.tutorial-overlay-mobile .tutorial-card p{color:var(--t4);margin-bottom:20px;font-size:14px;line-height:1.5}.tutorial-overlay-mobile .tutorial-card .got-it-btn{border-radius:var(--r3);background:var(--grad);color:#fff;cursor:pointer;border:none;width:100%;height:44px;font-size:15px;font-weight:700}.feature-discovery-mobile{z-index:400;pointer-events:none;position:fixed}.feature-discovery-mobile .spotlight{transition:all .3s var(--ease-out);border-radius:50%;position:absolute;box-shadow:0 0 0 9999px #000000b3}.feature-discovery-mobile .tooltip{border-radius:var(--r3);background:var(--s0);box-shadow:var(--shadow);pointer-events:auto;max-width:280px;padding:16px;position:absolute}.feature-discovery-mobile .tooltip h4{color:var(--t1);margin-bottom:4px;font-size:15px;font-weight:700}.feature-discovery-mobile .tooltip p{color:var(--t4);margin-bottom:12px;font-size:13px;line-height:1.4}.feature-discovery-mobile .tooltip .next-btn{border-radius:var(--r2);background:var(--grad);color:#fff;cursor:pointer;border:none;padding:8px 16px;font-size:13px;font-weight:700}.coach-mark-mobile{z-index:400;pointer-events:none;position:fixed}.coach-mark-mobile .highlight{border-radius:var(--r2);transition:all .3s var(--ease-out);position:absolute;box-shadow:0 0 0 9999px #000000b3}.coach-mark-mobile .callout{border-radius:var(--r3);background:var(--s0);box-shadow:var(--shadow);pointer-events:auto;max-width:240px;padding:12px 16px;position:absolute}.coach-mark-mobile .callout:after{content:"";border-left:8px solid #0000;border-right:8px solid #0000;border-bottom:8px solid var(--s0);width:0;height:0;position:absolute;top:-8px;left:50%;transform:translate(-50%)}.coach-mark-mobile .callout p{color:var(--t2);margin-bottom:8px;font-size:13px;line-height:1.4}.coach-mark-mobile .callout .dismiss-btn{color:var(--amber);cursor:pointer;background:0 0;border:none;padding:0;font-size:12px;font-weight:700}.progress-steps-mobile{justify-content:center;align-items:center;gap:8px;padding:16px;display:flex}.progress-steps-mobile .step{align-items:center;gap:8px;display:flex}.progress-steps-mobile .step .dot{background:var(--s3);width:28px;height:28px;color:var(--t4);border-radius:50%;justify-content:center;align-items:center;font-size:12px;font-weight:700;transition:all .3s;display:flex}.progress-steps-mobile .step.active .dot{background:var(--grad);color:#fff}.progress-steps-mobile .step.completed .dot{background:var(--green);color:#fff}.progress-steps-mobile .step .label{color:var(--t4);white-space:nowrap;font-size:12px;font-weight:600}.progress-steps-mobile .step.active .label{color:var(--t1)}.progress-steps-mobile .step-connector{background:var(--s3);width:24px;height:2px;transition:background-color .3s}.progress-steps-mobile .step-connector.completed{background:var(--green)}.wizard-mobile{flex-direction:column;min-height:100vh;display:flex}.wizard-mobile .wizard-header{padding:16px;padding-top:calc(16px + env(safe-area-inset-top));background:var(--s0);border-bottom:1px solid var(--b1)}.wizard-mobile .wizard-header .progress-bar{background:var(--s3);border-radius:2px;height:4px;margin-bottom:12px;overflow:hidden}.wizard-mobile .wizard-header .progress-bar .fill{background:var(--grad);height:100%;transition:width .3s var(--ease-out);border-radius:2px}.wizard-mobile .wizard-header .step-info{justify-content:space-between;align-items:center;display:flex}.wizard-mobile .wizard-header .step-info .step-count{color:var(--t4);font-size:13px;font-weight:600}.wizard-mobile .wizard-header .step-info .step-title{color:var(--t1);font-size:16px;font-weight:700}.wizard-mobile .wizard-content{-webkit-overflow-scrolling:touch;flex:1;padding:16px;overflow-y:auto}.wizard-mobile .wizard-footer{padding:16px;padding-bottom:calc(16px + env(safe-area-inset-bottom));background:var(--s0);border-top:1px solid var(--b1);gap:12px;display:flex}.wizard-mobile .wizard-footer button{border-radius:var(--r3);cursor:pointer;border:none;flex:1;height:48px;font-size:15px;font-weight:700;transition:transform .15s}.wizard-mobile .wizard-footer button:active{transform:scale(.98)}.wizard-mobile .wizard-footer .back-btn{background:var(--s2);color:var(--t2)}.wizard-mobile .wizard-footer .next-btn{background:var(--grad);color:#fff}.wizard-mobile .wizard-footer .next-btn:disabled{opacity:.5;cursor:default}.form-wizard-mobile{flex-direction:column;gap:16px;display:flex}.form-wizard-mobile .form-group{flex-direction:column;gap:6px;display:flex}.form-wizard-mobile .form-group label{color:var(--t3);font-size:13px;font-weight:600}.form-wizard-mobile .form-group input,.form-wizard-mobile .form-group select,.form-wizard-mobile .form-group textarea{border-radius:var(--r3);border:1.5px solid var(--b1);background:var(--s1);width:100%;height:48px;color:var(--t1);outline:none;padding:0 16px;font-size:16px;transition:border-color .2s}.form-wizard-mobile .form-group input:focus,.form-wizard-mobile .form-group select:focus,.form-wizard-mobile .form-group textarea:focus{border-color:var(--amber)}.form-wizard-mobile .form-group textarea{resize:vertical;height:auto;min-height:100px;padding:12px 16px}.form-wizard-mobile .form-group .error{color:var(--red);font-size:12px;font-weight:600}.form-wizard-mobile .form-group .hint{color:var(--t4);font-size:12px}.multi-step-form-mobile{flex-direction:column;gap:24px;display:flex}.multi-step-form-mobile .step-section{background:var(--s0);border:1px solid var(--b1);border-radius:var(--r3);padding:16px}.multi-step-form-mobile .step-section .section-header{align-items:center;gap:12px;margin-bottom:16px;display:flex}.multi-step-form-mobile .step-section .section-number{background:var(--grad);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:14px;font-weight:700;display:flex}.multi-step-form-mobile .step-section .section-title{color:var(--t1);font-size:16px;font-weight:700}.multi-step-form-mobile .step-section .section-description{color:var(--t4);margin-bottom:16px;font-size:13px}.review-section-mobile{background:var(--s0);border:1px solid var(--b1);border-radius:var(--r3);margin-bottom:16px;padding:16px}.review-section-mobile .review-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.review-section-mobile .review-header h4{color:var(--t1);font-size:15px;font-weight:700}.review-section-mobile .review-header .edit-btn{color:var(--amber);cursor:pointer;background:0 0;border:none;padding:0;font-size:13px;font-weight:600}.review-section-mobile .review-content{flex-direction:column;gap:8px;display:flex}.review-section-mobile .review-item{justify-content:space-between;align-items:center;font-size:14px;display:flex}.review-section-mobile .review-item .label{color:var(--t4)}.review-section-mobile .review-item .value{color:var(--t1);text-align:right;font-weight:600}.success-screen-mobile{text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:48px 24px;display:flex}.success-screen-mobile .success-icon{background:var(--glo);width:80px;height:80px;animation:success-pop .5s var(--ease-out);border-radius:50%;justify-content:center;align-items:center;margin-bottom:24px;display:flex}.success-screen-mobile .success-icon svg{width:40px;height:40px;color:var(--green)}.success-screen-mobile h2{color:var(--t1);margin-bottom:8px;font-size:24px;font-weight:800}.success-screen-mobile p{color:var(--t4);max-width:320px;margin-bottom:32px;font-size:15px;line-height:1.5}.success-screen-mobile .action-btn{border-radius:var(--r3);background:var(--grad);color:#fff;cursor:pointer;border:none;width:100%;max-width:320px;height:48px;font-size:15px;font-weight:700;transition:transform .15s}.success-screen-mobile .action-btn:active{transform:scale(.98)}.celebration-mobile{z-index:500;pointer-events:none;background:#000c;flex-direction:column;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.celebration-mobile .confetti{border-radius:2px;width:10px;height:10px;animation:3s ease-in-out infinite confetti-fall;position:absolute}@keyframes confetti-fall{0%{opacity:1;transform:translateY(-100vh)rotate(0)}to{opacity:0;transform:translateY(100vh)rotate(720deg)}}.celebration-mobile .celebration-content{text-align:center;animation:success-pop .5s var(--ease-out)}.celebration-mobile .celebration-content h2{color:#fff;margin-bottom:8px;font-size:32px;font-weight:800}.celebration-mobile .celebration-content p{color:#ffffffb3;font-size:16px}.haptic-light{transition:transform .1s}.haptic-light:active{transform:scale(.98)}.haptic-medium{transition:transform .15s}.haptic-medium:active{transform:scale(.95)}.haptic-heavy{transition:transform .2s}.haptic-heavy:active{transform:scale(.9)}.sound-feedback{position:relative}.sound-feedback:after{content:"";border-radius:inherit;border:2px solid var(--amber);opacity:0;pointer-events:none;position:absolute;inset:-4px}.sound-feedback:active:after{animation:.3s sound-ripple}@keyframes sound-ripple{0%{opacity:.5;transform:scale(1)}to{opacity:0;transform:scale(1.1)}}.vibration-feedback{transition:transform .1s}.vibration-feedback:active{animation:.15s vibrate}@keyframes vibrate{0%,to{transform:translate(0)}20%{transform:translate(-2px)}40%{transform:translate(2px)}60%{transform:translate(-2px)}80%{transform:translate(2px)}}.success-feedback{position:relative}.success-feedback:after{content:"";border-radius:inherit;border:2px solid var(--green);opacity:0;pointer-events:none;position:absolute;inset:-4px}.success-feedback:active:after{animation:.4s success-ripple}@keyframes success-ripple{0%{opacity:.5;transform:scale(1)}to{opacity:0;transform:scale(1.15)}}.error-feedback{position:relative}.error-feedback:after{content:"";border-radius:inherit;border:2px solid var(--red);opacity:0;pointer-events:none;position:absolute;inset:-4px}.error-feedback:active:after{animation:.4s error-ripple}@keyframes error-ripple{0%{opacity:.5;transform:scale(1)}to{opacity:0;transform:scale(1.15)}}.warning-feedback{position:relative}.warning-feedback:after{content:"";border-radius:inherit;border:2px solid var(--orange);opacity:0;pointer-events:none;position:absolute;inset:-4px}.warning-feedback:active:after{animation:.4s warning-ripple}@keyframes warning-ripple{0%{opacity:.5;transform:scale(1)}to{opacity:0;transform:scale(1.15)}}.info-feedback{position:relative}.info-feedback:after{content:"";border-radius:inherit;border:2px solid var(--blue);opacity:0;pointer-events:none;position:absolute;inset:-4px}.info-feedback:active:after{animation:.4s info-ripple}@keyframes info-ripple{0%{opacity:.5;transform:scale(1)}to{opacity:0;transform:scale(1.15)}}.neutral-feedback{position:relative}.neutral-feedback:after{content:"";border-radius:inherit;border:2px solid var(--t4);opacity:0;pointer-events:none;position:absolute;inset:-4px}.neutral-feedback:active:after{animation:.4s neutral-ripple}@keyframes neutral-ripple{0%{opacity:.5;transform:scale(1)}to{opacity:0;transform:scale(1.15)}}.primary-feedback{position:relative}.primary-feedback:after{content:"";border-radius:inherit;border:2px solid var(--amber);opacity:0;pointer-events:none;position:absolute;inset:-4px}.primary-feedback:active:after{animation:.4s primary-ripple}@keyframes primary-ripple{0%{opacity:.5;transform:scale(1)}to{opacity:0;transform:scale(1.15)}}.secondary-feedback{position:relative}.secondary-feedback:after{content:"";border-radius:inherit;border:2px solid var(--purple);opacity:0;pointer-events:none;position:absolute;inset:-4px}.secondary-feedback:active:after{animation:.4s secondary-ripple}@keyframes secondary-ripple{0%{opacity:.5;transform:scale(1)}to{opacity:0;transform:scale(1.15)}}.accent-feedback{position:relative}.accent-feedback:after{content:"";border-radius:inherit;border:2px solid var(--cyan);opacity:0;pointer-events:none;position:absolute;inset:-4px}.accent-feedback:active:after{animation:.4s accent-ripple}@keyframes accent-ripple{0%{opacity:.5;transform:scale(1)}to{opacity:0;transform:scale(1.15)}}.gold-feedback{position:relative}.gold-feedback:after{content:"";border-radius:inherit;border:2px solid var(--gold);opacity:0;pointer-events:none;position:absolute;inset:-4px}.gold-feedback:active:after{animation:.4s gold-ripple}@keyframes gold-ripple{0%{opacity:.5;transform:scale(1)}to{opacity:0;transform:scale(1.15)}}.coral-feedback{position:relative}.coral-feedback:after{content:"";border-radius:inherit;border:2px solid var(--coral);opacity:0;pointer-events:none;position:absolute;inset:-4px}.coral-feedback:active:after{animation:.4s coral-ripple}@keyframes coral-ripple{0%{opacity:.5;transform:scale(1)}to{opacity:0;transform:scale(1.15)}}.home-feedback{position:relative}.home-feedback:after{content:"";border-radius:inherit;border:2px solid var(--home);opacity:0;pointer-events:none;position:absolute;inset:-4px}.home-feedback:active:after{animation:.4s home-ripple}@keyframes home-ripple{0%{opacity:.5;transform:scale(1)}to{opacity:0;transform:scale(1.15)}}.gradient-feedback{position:relative}.gradient-feedback:after{content:"";border-radius:inherit;background:var(--grad) border-box;-webkit-mask-composite:xor;opacity:0;pointer-events:none;border:2px solid #0000;position:absolute;inset:-4px;-webkit-mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);-webkit-mask-position:0 0,0 0;-webkit-mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;-webkit-mask-clip:padding-box,border-box;-webkit-mask-origin:padding-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.gradient-feedback:active:after{animation:.4s gradient-ripple}@keyframes gradient-ripple{0%{opacity:.5;transform:scale(1)}to{opacity:0;transform:scale(1.15)}}.rainbow-feedback{position:relative}.rainbow-feedback:after{content:"";border-radius:inherit;-webkit-mask-composite:xor;opacity:0;pointer-events:none;background:linear-gradient(135deg,#ff7a4d,#f25b9a,#9b6bff,#5b9bef,#0f6) border-box;border:2px solid #0000;position:absolute;inset:-4px;-webkit-mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);-webkit-mask-position:0 0,0 0;-webkit-mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;-webkit-mask-clip:padding-box,border-box;-webkit-mask-origin:padding-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.rainbow-feedback:active:after{animation:.4s rainbow-ripple}@keyframes rainbow-ripple{0%{opacity:.5;transform:scale(1)}to{opacity:0;transform:scale(1.15)}}.neon-feedback{position:relative}.neon-feedback:after{content:"";border-radius:inherit;border:2px solid var(--amber);box-shadow:0 0 10px var(--amber), 0 0 20px var(--amber);opacity:0;pointer-events:none;position:absolute;inset:-4px}.neon-feedback:active:after{animation:.4s neon-ripple}@keyframes neon-ripple{0%{opacity:.5;transform:scale(1)}to{opacity:0;transform:scale(1.15)}}.glow-feedback{position:relative}.glow-feedback:after{content:"";border-radius:inherit;border:2px solid var(--amber);box-shadow:0 0 15px var(--amber-lo);opacity:0;pointer-events:none;position:absolute;inset:-4px}.glow-feedback:active:after{animation:.4s glow-ripple}@keyframes glow-ripple{0%{opacity:.5;transform:scale(1)}to{opacity:0;transform:scale(1.15)}}.pulse-feedback{position:relative}.pulse-feedback:after{content:"";border-radius:inherit;border:2px solid var(--amber);opacity:0;pointer-events:none;position:absolute;inset:-4px}.pulse-feedback:active:after{animation:.4s pulse-ripple}@keyframes pulse-ripple{0%{opacity:.5;transform:scale(1)}50%{opacity:.3;transform:scale(1.05)}to{opacity:0;transform:scale(1.15)}}.bounce-feedback{transition:transform .3s cubic-bezier(.34,1.56,.64,1)}.bounce-feedback:active{transform:scale(.9)}.elastic-feedback{transition:transform .4s cubic-bezier(.34,1.56,.64,1)}.elastic-feedback:active{transform:scale(.85)}.spring-feedback{transition:transform .5s cubic-bezier(.34,1.56,.64,1)}.spring-feedback:active{transform:scale(.8)}.smooth-feedback{transition:transform .2s var(--ease-out)}.smooth-feedback:active{transform:scale(.95)}.fast-feedback{transition:transform .1s}.fast-feedback:active{transform:scale(.98)}.slow-feedback{transition:transform .3s}.slow-feedback:active{transform:scale(.92)}.instant-feedback{transition:transform 50ms}.instant-feedback:active{transform:scale(.99)}.no-feedback{transition:none}.no-feedback:active{transform:none}.custom-feedback{position:relative}.custom-feedback:after{content:"";border-radius:inherit;border:2px solid var(--amber);opacity:0;pointer-events:none;position:absolute;inset:-4px}.custom-feedback:active:after{animation:.4s custom-ripple}@keyframes custom-ripple{0%{opacity:.5;transform:scale(1)}to{opacity:0;transform:scale(1.15)}}.feedback-none{transition:none}.feedback-none:active{transform:none}.feedback-none:after{display:none}.feedback-subtle{transition:transform .1s}.feedback-subtle:active{transform:scale(.98)}.feedback-medium{transition:transform .15s}.feedback-medium:active{transform:scale(.95)}.feedback-strong{transition:transform .2s}.feedback-strong:active{transform:scale(.9)}.feedback-extreme{transition:transform .3s}.feedback-extreme:active{transform:scale(.85)}.animate-none{animation:none}.animate-spin{animation:1s linear infinite spin}.animate-pulse{animation:2s infinite pulse}.animate-bounce{animation:1s infinite bounce}.animate-ping{animation:1s cubic-bezier(0,0,.2,1) infinite ping}.animate-fade-in{animation:.3s fadeIn}.animate-fade-out{animation:.3s fadeOut}.animate-slide-up{animation:slideUp .3s var(--ease-out)}.animate-slide-down{animation:slideDown .3s var(--ease-out)}.animate-slide-left{animation:slideLeft .3s var(--ease-out)}.animate-slide-right{animation:slideRight .3s var(--ease-out)}.animate-scale-up{animation:scaleUp .3s var(--ease-out)}.animate-scale-down{animation:scaleDown .3s var(--ease-out)}.animate-spring{animation:.5s cubic-bezier(.34,1.56,.64,1) spring}.animate-elastic{animation:.6s cubic-bezier(.34,1.56,.64,1) elastic}.animate-fade-in-up{animation:fadeInUp .3s var(--ease-out)}.animate-fade-in-down{animation:fadeInDown .3s var(--ease-out)}.animate-fade-in-left{animation:fadeInLeft .3s var(--ease-out)}.animate-fade-in-right{animation:fadeInRight .3s var(--ease-out)}.animate-fade-out-up{animation:fadeOutUp .3s var(--ease-out)}.animate-fade-out-down{animation:fadeOutDown .3s var(--ease-out)}.animate-fade-out-left{animation:fadeOutLeft .3s var(--ease-out)}.animate-fade-out-right{animation:fadeOutRight .3s var(--ease-out)}.animate-slide-in-up{animation:slideInUp .3s var(--ease-out)}.animate-slide-in-down{animation:slideInDown .3s var(--ease-out)}.animate-slide-in-left{animation:slideInLeft .3s var(--ease-out)}.animate-slide-in-right{animation:slideInRight .3s var(--ease-out)}.animate-slide-out-up{animation:slideOutUp .3s var(--ease-out)}.animate-slide-out-down{animation:slideOutDown .3s var(--ease-out)}.animate-slide-out-left{animation:slideOutLeft .3s var(--ease-out)}.animate-slide-out-right{animation:slideOutRight .3s var(--ease-out)}.animate-zoom-in{animation:zoomIn .3s var(--ease-out)}.animate-zoom-out{animation:zoomOut .3s var(--ease-out)}.animate-bounce-in{animation:.5s cubic-bezier(.34,1.56,.64,1) bounceIn}.animate-bounce-out{animation:.5s cubic-bezier(.34,1.56,.64,1) bounceOut}.animate-flip{animation:.6s flip}.animate-rotate{animation:.6s rotate}.animate-swing{animation:.6s swing}.animate-wobble{animation:.6s wobble}.animate-jello{animation:.6s jello}.animate-heartbeat{animation:1.5s infinite heartbeat}.animate-rubber-band{animation:.6s rubberBand}.animate-shake{animation:.6s shake}.animate-tada{animation:.6s tada}.animate-wiggle{animation:.6s wiggle}