:root{--sat:env(safe-area-inset-top);--sab:env(safe-area-inset-bottom);--sal:env(safe-area-inset-left);--sar:env(safe-area-inset-right);--vh:1vh;--min-touch-target:44px}.ios-safe-area-top{padding-top:max(1rem,env(safe-area-inset-top))}.ios-safe-area-bottom{padding-bottom:max(1rem,env(safe-area-inset-bottom))}.ios-safe-area{padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left)}.ios-no-bounce{overscroll-behavior-y:none;-webkit-overflow-scrolling:touch}@media (max-width:768px){[role=button],[type=button],[type=reset],[type=submit],a,button{min-height:var(--min-touch-target);min-width:var(--min-touch-target);padding:.75rem 1rem;touch-action:manipulation}.icon-button,button[aria-label]{min-height:var(--min-touch-target);min-width:var(--min-touch-target);display:inline-flex;align-items:center;justify-content:center}}*{-webkit-tap-highlight-color:transparent}@media (hover:none) and (pointer:coarse){[role=button]:active,a:active,button:active{opacity:.7;transform:scale(.98);transition:all .1s ease}}.touch-manipulation{touch-action:manipulation;-webkit-tap-highlight-color:transparent}.touch-pan-y{touch-action:pan-y}.touch-pan-x{touch-action:pan-x}@media (max-width:640px){.text-4xl,.text-5xl,.text-6xl,h1{font-size:1.875rem!important;line-height:2.25rem!important}.text-3xl,h2{font-size:1.5rem!important;line-height:2rem!important}.text-2xl,h3{font-size:1.25rem!important}.text-2xl,.text-xl,h3,h4{line-height:1.75rem!important}.text-xl,h4{font-size:1.125rem!important}p{margin-bottom:.75rem}.container{padding-left:1rem;padding-right:1rem}}@media (max-width:768px){.grid-cols-2,.grid-cols-3,.grid-cols-4,.grid-cols-5,.grid-cols-6{grid-template-columns:repeat(1,minmax(0,1fr))!important}.grid-cols-auto-fit{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))!important}.flex-row{flex-direction:column!important}.flex-row-reverse{flex-direction:column-reverse!important}input[type=email],input[type=number],input[type=password],input[type=search],input[type=tel],input[type=text],input[type=url],select,textarea{font-size:16px!important;min-height:var(--min-touch-target);padding:.75rem 1rem}textarea{min-height:120px}label{font-size:.875rem;font-weight:500;margin-bottom:.5rem;display:block}.form-group,.space-y-4>*,form>*{margin-bottom:1rem}select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3E%3C/svg%3E");background-position:right .5rem center;background-repeat:no-repeat;background-size:1.5em 1.5em;padding-right:2.5rem}}.table-responsive{overflow-x:auto;-webkit-overflow-scrolling:touch;width:100%;margin-bottom:1rem}@media (max-width:768px){table{font-size:.875rem}.table-responsive table{min-width:600px}.table-card{display:block}.table-card thead{display:none}.table-card tbody,.table-card td,.table-card tr{display:block;width:100%}.table-card tr{margin-bottom:1rem;border:1px solid #e5e7eb;border-radius:.5rem;padding:1rem}.table-card td{text-align:right;padding-left:50%;position:relative}.table-card td:before{content:attr(data-label);position:absolute;left:1rem;width:calc(50% - 2rem);text-align:left;font-weight:600}.dialog,.modal,[role=dialog]{width:100vw!important;max-width:100vw!important;height:100vh!important;max-height:100vh!important;margin:0!important;border-radius:0!important}.modal-overlay{position:fixed;inset:0}.modal-content{overflow-y:auto;-webkit-overflow-scrolling:touch;max-height:calc(100vh - env(safe-area-inset-top) - env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom)}.modal-header{position:sticky;top:0;z-index:10;background:#fff;padding-top:max(1rem,env(safe-area-inset-top))}.card{border-radius:.5rem;padding:1rem}.card-list{display:flex;flex-direction:column;gap:1rem}.card-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem}.card-actions button{flex:1;min-width:120px}}@media (max-width:1024px){.sidebar{position:fixed;top:0;left:0;height:100vh;width:280px;transform:translateX(-100%);transition:transform .3s ease;z-index:50;padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom)}.sidebar.open{transform:translateX(0)}.sidebar-overlay{position:fixed;inset:0;background:rgba(0,0,0,.5);z-index:40}.bottom-nav{position:fixed;bottom:0;left:0;right:0;display:flex;justify-content:space-around;background:#fff;border-top:1px solid #e5e7eb;padding-bottom:max(.5rem,env(safe-area-inset-bottom));z-index:40}.bottom-nav-item{flex:1;display:flex;flex-direction:column;align-items:center;padding:.5rem;min-height:var(--min-touch-target)}}@media (max-width:768px){img,video{max-width:100%;height:auto}.avatar-lg{width:3rem;height:3rem}.avatar-md{width:2.5rem;height:2.5rem}.avatar-sm{width:2rem;height:2rem}}@media (max-width:640px){.p-8,.px-8,.py-8{padding:1rem!important}.p-6,.px-6,.py-6{padding:.75rem!important}.m-8,.mx-8,.my-8{margin:1rem!important}.m-6,.mx-6,.my-6{margin:.75rem!important}.gap-8{gap:1rem!important}.gap-6{gap:.75rem!important}}@media (max-width:768px){.kanban-board{display:flex;overflow-x:auto;-webkit-overflow-scrolling:touch;gap:1rem;padding-bottom:1rem}.kanban-column{flex:0 0 280px;max-width:280px}.kanban-card{padding:1rem;margin-bottom:.75rem;min-height:80px;cursor:grab;touch-action:pan-y;-webkit-user-select:none;-moz-user-select:none;user-select:none}.kanban-card:active{cursor:grabbing}.kanban-card.dragging{opacity:.5;transform:scale(.95)}}.kanban-card a,.kanban-card button,.kanban-card input,.kanban-card select,.kanban-card textarea{touch-action:manipulation;-webkit-tap-highlight-color:transparent}@media (max-width:768px){.toast,[data-sonner-toast]{max-width:calc(100vw - 2rem);margin:0 1rem}.toast-container{padding-top:max(1rem,env(safe-area-inset-top));padding-bottom:max(1rem,env(safe-area-inset-bottom))}}*{scroll-behavior:smooth}.custom-scrollbar{scrollbar-width:thin;scrollbar-color:#cbd5e1 transparent}.custom-scrollbar::-webkit-scrollbar{width:6px;height:6px}.custom-scrollbar::-webkit-scrollbar-track{background:transparent}.custom-scrollbar::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}.custom-scrollbar::-webkit-scrollbar-thumb:hover{background:#94a3b8}.scrollbar-hide{-ms-overflow-style:none;scrollbar-width:none}.scrollbar-hide::-webkit-scrollbar{display:none}@media (max-width:768px){@media (prefers-reduced-motion:no-preference){*{animation-duration:.2s!important;transition-duration:.2s!important}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}}.gpu-accelerated{transform:translateZ(0);backface-visibility:hidden;perspective:1000px}@media (max-width:768px){.hidden-mobile{display:none!important}}.show-mobile{display:none!important}@media (max-width:768px){.show-mobile{display:block!important}.show-mobile-flex{display:flex!important}.show-mobile-grid{display:grid!important}}.truncate-mobile{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (max-width:768px){.truncate-mobile-2{-webkit-line-clamp:2}.truncate-mobile-2,.truncate-mobile-3{display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden}.truncate-mobile-3{-webkit-line-clamp:3}.steps-container{overflow-x:auto;-webkit-overflow-scrolling:touch}.step-item{min-width:100px;flex:1}.checkout-form{padding:1rem}.checkout-summary{position:sticky;bottom:0;background:#fff;border-top:1px solid #e5e7eb;padding:1rem 1rem max(1rem,env(safe-area-inset-bottom))}}@media (max-width:768px) and (orientation:landscape){.modal,[role=dialog]{max-height:100vh;overflow-y:auto}.header,.mobile-header{min-height:3rem;padding-top:.5rem;padding-bottom:.5rem}}@media (max-width:768px){:focus-visible{outline:2px solid #3b82f6;outline-offset:2px}.skip-link{position:absolute;top:-100px;left:0;padding:1rem;background:#fff;z-index:100}.skip-link:focus{top:0}.dark .bottom-nav,.dark .checkout-summary,.dark .modal-header{background:#1f2937;border-color:#4b5563}.dark .sidebar{background:#111827}}@media (display-mode:standalone){body{padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom)}.pwa-hide{display:none}}@supports (-webkit-touch-callout:none){input,select,textarea{font-size:16px!important}.full-height{height:-webkit-fill-available}}.no-select{-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-touch-callout:none}@media (max-width:768px){.skeleton{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite;background:linear-gradient(90deg,#f3f4f6 25%,#e5e7eb 50%,#f3f4f6 75%);background-size:200% 100%}@keyframes pulse{0%,to{background-position:0 0}50%{background-position:100% 0}}.spinner-mobile{width:2rem;height:2rem;border:3px solid #e5e7eb;border-top-color:#3b82f6;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}}