@media screen and (device-width:1024px) and (device-height:768px),screen and (device-width:768px) and (device-height:1024px){input[type=email],input[type=number],input[type=password],input[type=tel],input[type=text],select,textarea{font-size:16px!important;-webkit-transform-origin:left top;transform-origin:left top}*{-webkit-tap-highlight-color:rgba(0,0,0,.1);-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}[contenteditable],input,textarea{-webkit-user-select:auto;-moz-user-select:auto;-ms-user-select:auto;user-select:auto}}.touch-target{min-height:44px;min-width:44px;cursor:pointer}.touch-target,.touch-target-large{-ms-touch-action:manipulation;touch-action:manipulation}.touch-target-large{min-height:48px;min-width:120px}.touch-feedback{-webkit-transition:all .15s ease-out;transition:all .15s ease-out}.touch-feedback:active{-webkit-transform:scale(.95);transform:scale(.95);-webkit-filter:brightness(1.1);filter:brightness(1.1)}.clickable,[role=button],button{-ms-touch-action:manipulation;touch-action:manipulation;-webkit-tap-highlight-color:rgba(0,0,0,.1)}@media (max-width:768px) and (orientation:portrait){.ipad-portrait-stack{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.ipad-portrait-full{width:100%;margin:0}.sidebar-responsive{width:160px}.content-responsive{margin-left:160px;padding:16px}.modal-responsive{max-width:90vw;max-height:80vh;margin:5vh auto}}@media (min-width:769px) and (max-width:1024px) and (orientation:landscape){.ipad-landscape-grid{display:grid;grid-template-columns:200px 1fr;gap:16px}.sidebar-responsive{width:200px}.content-responsive{margin-left:200px;padding:20px}.ipad-landscape-cols{display:grid;grid-template-columns:1fr 1fr;gap:20px}.modal-responsive{max-width:70vw;max-height:70vh}}.touch-typography{font-size:16px;line-height:1.5;letter-spacing:.01em}.touch-typography-large{font-size:18px;line-height:1.4;font-weight:500}.touch-spacing-xs{margin:4px}.touch-spacing-sm{margin:8px}.touch-spacing-md{margin:16px}.touch-spacing-lg{margin:24px}.touch-padding-xs{padding:4px}.touch-padding-sm{padding:8px}.touch-padding-md{padding:16px}.touch-padding-lg{padding:24px}.touch-input{min-height:48px;padding:12px 16px;font-size:16px;border-radius:8px;border:2px solid #e1e5e9;-webkit-transition:all .2s ease;transition:all .2s ease;-ms-touch-action:manipulation;touch-action:manipulation}.touch-input:focus{border-color:#3b82f6;-webkit-box-shadow:0 0 0 3px rgba(59,130,246,.1);box-shadow:0 0 0 3px rgba(59,130,246,.1);outline:none}.touch-input:invalid{border-color:#ef4444}.touch-select{min-height:48px;padding:12px 40px 12px 16px;font-size:16px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6,9 12,15 18,9'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right 12px center;background-size:16px}.touch-checkbox,.touch-radio{width:20px;height:20px;margin-right:12px}.touch-label{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;min-height:44px;padding:8px}.touch-button-primary,.touch-label{cursor:pointer;-ms-touch-action:manipulation;touch-action:manipulation}.touch-button-primary{min-height:48px;min-width:120px;padding:12px 24px;font-size:16px;font-weight:600;border-radius:8px;border:none;background:linear-gradient(135deg,#3b82f6,#2563eb);color:white;-webkit-transition:all .2s ease;transition:all .2s ease}.touch-button-primary:hover{background:linear-gradient(135deg,#2563eb,#1d4ed8);-webkit-transform:translateY(-1px);transform:translateY(-1px);-webkit-box-shadow:0 4px 12px rgba(59,130,246,.3);box-shadow:0 4px 12px rgba(59,130,246,.3)}.touch-button-primary:active{-webkit-transform:scale(.95);transform:scale(.95)}.touch-button-primary:disabled{opacity:.5;cursor:not-allowed;-webkit-transform:none;transform:none}.touch-button-secondary{min-height:48px;min-width:120px;padding:12px 24px;font-size:16px;font-weight:500;border-radius:8px;border:2px solid #e1e5e9;background:white;color:#374151;cursor:pointer;-ms-touch-action:manipulation;touch-action:manipulation;-webkit-transition:all .2s ease;transition:all .2s ease}.touch-button-secondary:hover{border-color:#d1d5db;background:#f9fafb}.touch-button-secondary:active{-webkit-transform:scale(.95);transform:scale(.95)}.touch-button-icon{min-height:44px;min-width:44px;padding:10px;border-radius:8px;border:none;background:transparent;cursor:pointer;-ms-touch-action:manipulation;touch-action:manipulation;-webkit-transition:all .2s ease;transition:all .2s ease;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.touch-button-icon:hover{background:rgba(0,0,0,.05)}.touch-button-icon:active{-webkit-transform:scale(.9);transform:scale(.9);background:rgba(0,0,0,.1)}.touch-card{padding:20px;border-radius:12px;border:1px solid #e1e5e9;background:white;cursor:pointer;-ms-touch-action:manipulation;touch-action:manipulation;-webkit-transition:all .2s ease;transition:all .2s ease}.touch-card:hover{-webkit-transform:translateY(-2px);transform:translateY(-2px);-webkit-box-shadow:0 8px 24px rgba(0,0,0,.1);box-shadow:0 8px 24px rgba(0,0,0,.1);border-color:#d1d5db}.touch-card:active{-webkit-transform:scale(.98);transform:scale(.98)}.touch-list-item{min-height:48px;padding:12px 16px;border-bottom:1px solid #f3f4f6;cursor:pointer;-ms-touch-action:manipulation;touch-action:manipulation;-webkit-transition:all .15s ease;transition:all .15s ease;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.touch-list-item:hover{background:#f9fafb}.touch-list-item:active{background:#f3f4f6}.touch-list-item:last-child{border-bottom:none}.touch-modal-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.5);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:50;-ms-touch-action:none;touch-action:none}.touch-modal{position:relative;max-width:90vw;max-height:80vh;margin:5vh auto;background:white;border-radius:16px;-webkit-box-shadow:0 20px 40px rgba(0,0,0,.2);box-shadow:0 20px 40px rgba(0,0,0,.2);overflow:hidden;-ms-touch-action:pan-y;touch-action:pan-y}.touch-modal-handle{width:48px;height:4px;background:#d1d5db;border-radius:2px;margin:12px auto 8px;cursor:-webkit-grab;cursor:grab}.touch-modal-handle:active{cursor:-webkit-grabbing;cursor:grabbing}.touch-scroll{overflow-y:auto;-webkit-overflow-scrolling:touch;scroll-behavior:smooth}.touch-scroll::-webkit-scrollbar{width:8px}.touch-scroll::-webkit-scrollbar-track{background:#f1f5f9;border-radius:4px}.touch-scroll::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}.touch-scroll::-webkit-scrollbar-thumb:hover{background:#94a3b8}.touch-focus:focus-visible{outline:2px solid #3b82f6;outline-offset:2px;border-radius:4px}@media (prefers-contrast:high){.touch-button-primary{border:2px solid}.touch-input{border-width:2px}}@media (prefers-reduced-motion:reduce){*{-webkit-transition-duration:.01ms!important;transition-duration:.01ms!important;-webkit-animation-duration:.01ms!important;animation-duration:.01ms!important}}.touch-accelerated{-webkit-transform:translateZ(0);transform:translateZ(0);will-change:transform}.touch-container{contain:layout style paint}.touch-image{-o-object-fit:cover;object-fit:cover;-o-object-position:center;object-position:center;loading:lazy}.portrait-only{display:block}.landscape-only{display:none}@media (orientation:landscape){.portrait-only{display:none}.landscape-only{display:block}}.no-touch-callout{-webkit-touch-callout:none}.no-user-select{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.touch-manipulation{-ms-touch-action:manipulation;touch-action:manipulation}.touch-pan-x{-ms-touch-action:pan-x;touch-action:pan-x}.touch-pan-y{-ms-touch-action:pan-y;touch-action:pan-y}.touch-pinch-zoom{-ms-touch-action:pinch-zoom;touch-action:pinch-zoom}