@layer base{button,[role=button],.btn,.button{@apply min-h-[44px] min-w-[44px];}input[type=text],input[type=email],input[type=password],input[type=search],input[type=tel],input[type=url],input[type=number],input[type=date],input[type=time],input[type=datetime-local],select,textarea{@apply min-h-[44px] text-base;font-size:16px}input[type=checkbox],input[type=radio]{@apply w-6 h-6;}a{@apply py-1;}}@layer components{.touch-card{@apply p-4 rounded-lg bg-white shadow-sm;@apply active:bg-gray-50 transition-colors duration-150;}.swipe-item{@apply relative overflow-hidden;touch-action:pan-x}.touch-tabs{@apply flex gap-1 p-1 bg-gray-100 rounded-lg;}.touch-tab{@apply flex-1 py-3 px-4 text-center rounded-md;@apply font-medium text-gray-600;@apply active:bg-gray-200 transition-colors duration-150;}.touch-tab.active{@apply bg-white text-teal-600 shadow-sm;}.bottom-nav{@apply fixed bottom-0 left-0 right-0;@apply flex justify-around items-center;@apply h-16 bg-white border-t border-gray-200;@apply safe-area-inset-bottom;z-index:50}.bottom-nav-item{@apply flex flex-col items-center justify-center;@apply w-16 h-full text-gray-500;@apply active:text-teal-600 transition-colors;}.bottom-nav-item.active{@apply text-teal-600;}.fab{@apply fixed bottom-20 right-4;@apply w-14 h-14 rounded-full;@apply bg-teal-600 text-white shadow-lg;@apply flex items-center justify-center;@apply active:bg-teal-700 active:scale-95;@apply transition-all duration-150;z-index:40}.touch-dropdown{@apply absolute top-full left-0 right-0 mt-1;@apply bg-white rounded-lg shadow-lg border border-gray-200;@apply max-h-[50vh] overflow-y-auto;@apply overscroll-contain;z-index:50}.touch-dropdown-item{@apply px-4 py-3 border-b border-gray-100 last:border-b-0;@apply active:bg-gray-50 transition-colors;}.swipe-hint{@apply absolute top-1/2 -translate-y-1/2;@apply w-8 h-1 bg-gray-300 rounded-full;@apply opacity-50;}.swipe-hint-left{@apply left-2;}.swipe-hint-right{@apply right-2;}}@layer utilities{.safe-area-inset-top{padding-top:env(safe-area-inset-top,0)}.safe-area-inset-bottom{padding-bottom:env(safe-area-inset-bottom,0)}.safe-area-inset-left{padding-left:env(safe-area-inset-left,0)}.safe-area-inset-right{padding-right:env(safe-area-inset-right,0)}.safe-area-insets{padding:env(safe-area-inset-top,0) env(safe-area-inset-right,0) env(safe-area-inset-bottom,0) env(safe-area-inset-left,0)}}@media(min-width:768px)and (max-width:1023px)and (orientation:portrait){.tablet-portrait-layout{@apply pb-20;}.tablet-hide-sidebar{@apply hidden;}.tablet-full-width{@apply w-full max-w-none;}.tablet-text-lg{@apply text-lg;}.tablet-grid-2{@apply grid grid-cols-2 gap-4;}}@media(min-width:1024px)and (orientation:landscape){.tablet-landscape-layout{@apply flex;}.tablet-sidebar{@apply w-64 flex-shrink-0;}.tablet-main{@apply flex-1 min-w-0;}.tablet-grid-3{@apply grid grid-cols-3 gap-4;}}@media(min-width:1280px){.tablet-xl-grid-4{@apply grid grid-cols-4 gap-4;}.tablet-xl-sidebar-wide{@apply w-72;}}button,a,input,select,textarea,[role=button],[role=tab],[role=menuitem]{touch-action:manipulation}html.no-pull-refresh{overscroll-behavior-y:contain}.scroll-container{-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.scrollbar-hide{-ms-overflow-style:none;scrollbar-width:none}.scrollbar-hide::-webkit-scrollbar{display:none}@supports (height: 100dvh){.keyboard-aware{height:100dvh}}input:focus,select:focus,textarea:focus{@apply outline-none ring-2 ring-teal-500 ring-offset-2;}@media(prefers-color-scheme:dark){.touch-card{@apply bg-gray-800;@apply active:bg-gray-700;}.touch-tabs{@apply bg-gray-800;}.touch-tab.active{@apply bg-gray-700 text-teal-400;}.bottom-nav{@apply bg-gray-900 border-gray-700;}}.stylus-area{touch-action:none}.signature-pad{@apply border-2 border-dashed border-gray-300 rounded-lg;@apply bg-gray-50 min-h-[120px];touch-action:none}.signature-pad.active{@apply border-teal-500 bg-white;}@media(max-width:400px){.compact-mode{@apply text-sm;}.compact-mode .touch-card{@apply p-2;}.compact-mode button{@apply px-2 py-1 text-sm;}}@keyframes touch-press{0%{transform:scale(1)}50%{transform:scale(.97)}to{transform:scale(1)}}.touch-press:active{animation:touch-press .15s ease-out}.ripple-container{@apply relative overflow-hidden;}.long-press-indicator{@apply absolute inset-0 bg-gray-900 opacity-0;@apply pointer-events-none transition-opacity;}.long-press-active .long-press-indicator{@apply opacity-10;}@media(max-width:1023px){.responsive-table{@apply block;}.responsive-table thead{@apply hidden;}.responsive-table tbody{@apply block;}.responsive-table tr{@apply block mb-4 p-4 bg-white rounded-lg shadow-sm;}.responsive-table td{@apply block py-1;@apply before:content-[attr(data-label)] before:font-semibold before:text-gray-500;@apply before:block before:text-xs before:uppercase before:tracking-wide;}}.bottom-sheet{@apply fixed inset-x-0 bottom-0;@apply bg-white rounded-t-2xl shadow-xl;@apply transform transition-transform duration-300;@apply max-h-[85vh] overflow-hidden;@apply safe-area-inset-bottom;}.bottom-sheet-handle{@apply w-10 h-1 bg-gray-300 rounded-full mx-auto mt-3 mb-2;}.bottom-sheet-content{@apply p-4 overflow-y-auto;@apply max-h-[85vh-60px];-webkit-overflow-scrolling:touch}.tablet-drawer{@apply fixed top-0 bottom-0 w-80;@apply bg-white shadow-xl;@apply transform transition-transform duration-300;@apply safe-area-insets;z-index:50}.tablet-drawer-left{@apply left-0 -translate-x-full;}.tablet-drawer-left.open{@apply translate-x-0;}.tablet-drawer-right{@apply right-0 translate-x-full;}.tablet-drawer-right.open{@apply translate-x-0;}.drawer-backdrop{@apply fixed inset-0 bg-black bg-opacity-50;@apply transition-opacity duration-300;@apply opacity-0 pointer-events-none;z-index:40}.drawer-backdrop.open{@apply opacity-100 pointer-events-auto;}
