:root{--brand-green: #0c6568;--brand-red: #C93F4F;--gray-50: #f9fafb;--gray-100: #f3f4f6;--gray-200: #e5e7eb;--gray-300: #d1d5db;--gray-400: #9ca3af;--gray-500: #6b7280;--gray-600: #4b5563;--gray-700: #374151;--gray-800: #1f2937;--gray-900: #111827;--danger: #ef4444;--danger-light: #f87171;--danger-dark: #dc2626;--danger-darker: #b91c1c;--success: #22c55e;--success-light: #4ade80;--success-dark: #16a34a;--success-darker: #15803d;--warning: #eab308;--warning-light: #facc15;--warning-dark: #ca8a04;--info: #3b82f6;--info-light: #60a5fa;--info-dark: #2563eb;--font-display: Poppins, serif;--font-body: Inter, sans-serif;--transition-fast: .15s;--transition-base: .2s;--transition-slow: .3s;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow: 0 1px 3px 0 rgba(0, 0, 0, .1), 0 1px 2px 0 rgba(0, 0, 0, .06);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 10px 10px -5px rgba(0, 0, 0, .04);--shadow-2xl: 0 25px 50px -12px rgba(0, 0, 0, .25)}*,*:before,*:after{box-sizing:border-box}body,h1,h2,h3,h4,h5,h6,p,blockquote,pre,dl,dd,ol,ul,figure,hr{margin:0;padding:0}html{scroll-behavior:smooth}body{min-height:100vh;line-height:1.5;text-rendering:optimizeSpeed}img,picture,video,canvas,svg{display:block;max-width:100%;height:auto}input,button,textarea,select{font:inherit}input:-webkit-autofill,input:-webkit-autofill:hover,input:-webkit-autofill:focus,input:-webkit-autofill:active{-webkit-box-shadow:0 0 0 30px white inset!important;box-shadow:0 0 0 30px #fff inset!important;-webkit-text-fill-color:inherit!important}@media (prefers-reduced-motion: reduce){html:focus-within{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}body{font-family:Inter,sans-serif;font-size:1rem;line-height:1.5;color:#111827;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{font-family:Poppins,serif;font-weight:600;line-height:1.2;color:#111827}h1{font-size:2.5rem;font-weight:700}h2{font-size:2rem;font-weight:600}h3{font-size:1.75rem}h4{font-size:1.5rem}h5{font-size:1.25rem}h6{font-size:1rem}p{margin-bottom:1rem}p:last-child{margin-bottom:0}a{color:#0c6568;text-decoration:none;transition:color .15s}a:hover{color:#0a5457}a:focus{outline:2px solid #0c6568;outline-offset:2px}ul,ol{padding-left:1.5rem;margin-bottom:1rem}ul:last-child,ol:last-child{margin-bottom:0}li{margin-bottom:.25rem}li:last-child{margin-bottom:0}code{font-family:Courier New,monospace;font-size:.875em;background-color:#f3f4f6;padding:.125rem .25rem;border-radius:.25rem}pre{font-family:Courier New,monospace;font-size:.875rem;background-color:#f3f4f6;padding:1rem;border-radius:.375rem;overflow-x:auto}pre code{background-color:transparent;padding:0}blockquote{border-left:4px solid #0c6568;padding-left:1rem;margin:1rem 0;font-style:italic;color:#374151}small{font-size:.875rem;color:#4b5563}strong,b{font-weight:700}em,i{font-style:italic}::selection{background-color:#0c656833;color:#111827}::-moz-selection{background-color:#0c656833;color:#111827}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}@keyframes modalFadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes modalFadeOut{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.95)}}@keyframes slideInRight{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes slideOutRight{0%{transform:translate(0);opacity:1}to{transform:translate(100%);opacity:0}}@keyframes slideInLeft{0%{transform:translate(-100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes slideOutLeft{0%{transform:translate(0);opacity:1}to{transform:translate(-100%);opacity:0}}@keyframes slideInUp{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes slideOutDown{0%{transform:translateY(0);opacity:1}to{transform:translateY(100%);opacity:0}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes bounce{0%,to{transform:translateY(0)}25%{transform:translateY(-10px)}75%{transform:translateY(-5px)}}@keyframes skeleton{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes toasterSlideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes toasterSlideOut{0%{transform:translate(0);opacity:1}to{transform:translate(100%);opacity:0}}.animate-fadeIn{animation:fadeIn .2s ease-out}.animate-fadeOut{animation:fadeOut .2s ease-out}.animate-spin{animation:spin 1s linear infinite}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.animate-bounce{animation:bounce 1s infinite}.modal-fade-in{animation:modalFadeIn .2s ease-out}.modal-fade-out{animation:modalFadeOut .15s ease-out}.toaster-slide-in{animation:toasterSlideIn .3s ease-out}.toaster-slide-out{animation:toasterSlideOut .2s ease-out}.skeleton-loading{background:linear-gradient(90deg,#e5e7eb 25%,#f3f4f6,#e5e7eb 75%);background-size:200% 100%;animation:skeleton 1.5s ease-in-out infinite}.southmarket-lottie{position:fixed;top:0;right:0;z-index:10;width:400px;height:400px;pointer-events:none}@media only screen and (max-width: 480px){.southmarket-lottie{width:120px;height:120px}}.profile-menu-icon{flex-shrink:0;width:1.25rem;height:1.25rem}.sidebar-transition{transition:transform .3s ease-in-out}.sidebar-item{transition:background-color .2s ease}.sidebar-item:hover{background-color:#0000000d}.sidebar-item.sidebar-item-active{background-color:#22c55e1a;border-left:3px solid #22c55e}.tabs-container,.tabs-day-container{margin-bottom:2rem;border-bottom:1px solid #e5e7eb}.tabs-container .btn-tab,.tabs-day-container .btn-tab{font-size:.875rem;display:inline-block;padding:.5rem 1rem;letter-spacing:.2px;cursor:pointer;transition:color .15s ease}.tabs-container .btn-tab:hover,.tabs-day-container .btn-tab:hover{color:#374151}.tabs-container .btn-tab.active,.tabs-day-container .btn-tab.active{color:#0c6568}.tab-content,.tab-data{display:none;width:100%}.tab-content.active,.tab-data.active{display:inherit}.modal-backdrop{background-color:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-center{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:1rem}.modal-center-transform>div{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);max-height:calc(100vh - 2rem);overflow-y:auto}.modal-scrollbar::-webkit-scrollbar{width:6px}.modal-scrollbar::-webkit-scrollbar-track{background:#f3f4f6;border-radius:3px}.modal-scrollbar::-webkit-scrollbar-thumb{background:#6b7280;border-radius:3px}.modal-scrollbar::-webkit-scrollbar-thumb:hover{background:#374151}.modal-fixed-layout{display:flex;flex-direction:column;height:100vh;overflow:hidden}.modal-fixed-header{flex-shrink:0;padding:2rem 2rem 1.5rem;background:#fff;border-bottom:1px solid #e5e7eb}.modal-fixed-header.is-scrolled{box-shadow:0 2px 8px #0000000d}.modal-scrollable-body{flex:1;overflow-y:auto;padding:1.5rem 2rem;background:#fff}.modal-scrollable-body::-webkit-scrollbar{width:8px}.modal-scrollable-body::-webkit-scrollbar-track{background:#f3f4f6}.modal-scrollable-body::-webkit-scrollbar-thumb{background:#9ca3af;border-radius:4px}.modal-scrollable-body::-webkit-scrollbar-thumb:hover{background:#6b7280}.modal-fixed-footer{flex-shrink:0;padding:1.5rem 2rem;background:#fff;border-top:1px solid #e5e7eb;box-shadow:0 -2px 8px #0000000d}.vendor-contact-item .vendor-clipboard-icon{opacity:0;transition:opacity .2s ease-in-out}.vendor-contact-item:hover .vendor-clipboard-icon{opacity:1}.input-with-icon{padding-right:2.5rem}.validation-icon{position:absolute;inset:0 0 0 auto;display:flex;align-items:center;padding-right:.75rem;pointer-events:none}.field-error{border-color:#ef4444}.field-error-text{color:#dc2626;font-size:.75rem;margin-top:.25rem;display:block}.field-success{border-color:#22c55e}.field-success-text{color:#22c55e;font-size:.75rem;margin-top:.25rem;display:block}.dropdown-arrow{pointer-events:none;position:absolute;top:50%;right:.5rem;transform:translateY(-50%)}select{appearance:none;-webkit-appearance:none;-moz-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-repeat:no-repeat;background-position:right .5rem center;background-size:1.5em 1.5em;padding-right:2.5rem;-webkit-print-color-adjust:exact;print-color-adjust:exact}select:focus{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='%230c6568' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");background-size:1.5em 1.5em;background-position:right .5rem center}select:disabled{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='%239CA3AF' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");background-size:1.5em 1.5em;background-position:right .5rem center}input[type=checkbox]{appearance:none;-webkit-appearance:none;-moz-appearance:none;width:1.25rem;height:1.25rem;border:1.5px solid #d1d5db;border-radius:.25rem;background-color:#fff;cursor:pointer;position:relative;transition:all .15s ease-in-out;flex-shrink:0}input[type=checkbox]:hover{border-color:#9ca3af}input[type=checkbox]:focus{outline:none;border-color:#0c6568;box-shadow:0 0 0 3px #0c65681a}input[type=checkbox]:focus-visible{outline:none;border-color:#0c6568;box-shadow:0 0 0 3px #0c65681a}input[type=checkbox]:checked{background-color:#0c6568;border-color:#0c6568}input[type=checkbox]:checked:before{content:"";position:absolute;left:50%;top:50%;width:.5rem;height:.3rem;border-left:1.5px solid white;border-bottom:1.5px solid white;transform:translate(-50%,-60%) rotate(-45deg)}input[type=checkbox]:indeterminate{background-color:#0c6568;border-color:#0c6568}input[type=checkbox]:indeterminate:before{content:"";position:absolute;left:50%;top:50%;width:.5rem;height:2px;background-color:#fff;transform:translate(-50%,-50%)}input[type=checkbox]:disabled{opacity:.5;cursor:not-allowed}input[type=checkbox]:disabled:hover{border-color:#d1d5db}.checkbox-wrapper{display:flex;align-items:center;gap:.75rem}.checkbox-wrapper label{cursor:pointer;-webkit-user-select:none;user-select:none}.mobile-input-wrapper{position:relative}.mobile-input-wrapper .mobile-prefix{position:absolute;left:1px;top:1px;height:40px;display:flex;align-items:center;padding:0 .75rem;background-color:#f3f4f6;color:#6b7280;border-right:1px solid #d1d5db;border-top-left-radius:.5rem;border-bottom-left-radius:.5rem;pointer-events:none;font-weight:500;z-index:1}.mobile-input-wrapper .mobile-input{padding-left:3.85rem}.mobile-input-wrapper .mobile-input:focus{outline:none;border-color:#0c6568;box-shadow:0 0 0 3px #0c65681a}.mobile-input-wrapper .mobile-input.error{border-color:#ef4444}.mobile-input-wrapper .mobile-input.error:focus{border-color:#ef4444;box-shadow:0 0 0 3px #ef44441a}.toggle-wrapper{display:inline-flex;align-items:center;gap:.75rem}.toggle-switch{position:relative;display:inline-block;width:44px;height:24px;cursor:pointer}.toggle-switch:hover .toggle-slider{background-color:#d1d5db}.toggle-switch:hover .toggle-input:checked+.toggle-slider{background-color:#0a5457}.toggle-switch:hover .toggle-input:disabled+.toggle-slider{background-color:#e5e7eb}.toggle-input{opacity:0;width:0;height:0;position:absolute}.toggle-input:checked+.toggle-slider{background-color:#0c6568}.toggle-input:checked+.toggle-slider:before{transform:translate(20px)}.toggle-input:focus+.toggle-slider{box-shadow:0 0 0 2px #fff,0 0 0 4px #0c6568}.toggle-input:disabled+.toggle-slider{opacity:.5;cursor:not-allowed}.toggle-slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:#e5e7eb;transition:all .2s ease-in-out;border-radius:34px}.toggle-slider:before{position:absolute;content:"";height:18px;width:18px;left:3px;bottom:3px;background-color:#fff;transition:all .2s ease-in-out;border-radius:50%;box-shadow:0 1px 3px #0000001a}.toggle-label{font-size:.875rem;color:#374151;-webkit-user-select:none;user-select:none}.btn-loading{opacity:.75;cursor:not-allowed}.btn-loading:disabled{opacity:.75;cursor:not-allowed}.btn-hover-scale{transition:transform .2s}.btn-hover-scale:hover:not(:disabled){transform:scale(1.05)}.btn{display:inline-block;padding:.5rem 1rem;background-color:#e3e3e3;cursor:pointer;transition:background-color .15s ease-in-out}.btn:hover{background-color:#cacaca}.btn-xs{padding:.25rem .5rem;font-size:.75rem;border-radius:.375rem}.btn-sm{padding:.375rem .75rem;font-size:.875rem;border-radius:.375rem}.btn-base,.btn-md{padding:.5rem 1rem;font-size:1rem;border-radius:.5rem}.btn-lg{padding:.75rem 1.5rem;font-size:1rem;border-radius:.5rem}.btn-xl{padding:1rem 2rem;font-size:1.125rem;border-radius:.5rem}table th{font-size:.95rem}.product-row{transition:background-color .15s ease-in-out}.product-row:hover{background-color:#0c65680d;cursor:pointer}.table-sticky-header thead{position:sticky;top:0;z-index:10;background-color:#fff}.table-hover tbody tr:hover{background-color:#00000005}.table-cell-truncate{max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.product-name-truncate{max-width:250px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block}table.relative{position:relative}tr.selection-overlay{position:absolute;top:0;left:0;right:0;height:100%;display:none;pointer-events:none}tr.selection-overlay.selection-overlay-show{display:table-row}tr.selection-overlay td{position:relative;height:48px;background:linear-gradient(90deg,transparent 60px,white 60px);padding-left:60px!important;pointer-events:none}.selection-overlay-content{display:flex;align-items:center;justify-content:flex-start;width:100%;pointer-events:auto}.selection-info{display:flex;align-items:center;gap:.5rem;pointer-events:auto}.selection-count{font-size:.875rem;font-weight:500;display:flex;align-items:center;gap:.5rem}.selection-count:after{display:none}.selection-actions{display:flex;align-items:center;margin-left:15px}.selection-actions button{pointer-events:auto}.payment-status-wrapper,.application-status-wrapper,.labels-printed-wrapper{display:inline-flex;align-items:center;gap:.375rem}.payment-note-indicator,.electricity-note-indicator,.rejection-reason-indicator{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:3px;cursor:help;transition:all .15s ease;position:relative;flex-shrink:0}.payment-note-indicator svg,.electricity-note-indicator svg,.rejection-reason-indicator svg{width:16px;height:16px;color:#6b7280;transition:color .15s ease}.payment-note-indicator:hover svg,.electricity-note-indicator:hover svg,.rejection-reason-indicator:hover svg{color:#374151}.payment-note-indicator .tooltip-content,.electricity-note-indicator .tooltip-content,.rejection-reason-indicator .tooltip-content{width:max-content;max-width:280px;white-space:normal;line-height:1.3;padding:.375rem .625rem;font-size:.8125rem}.electricity-wrapper{display:inline-flex;align-items:center;gap:.375rem}.select-status{font-weight:500;padding:.375rem 2rem .375rem .75rem;border-radius:.375rem;border-width:1px;border-style:solid;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-repeat:no-repeat;background-position:right .5rem center;background-size:1rem;cursor:pointer;transition:all .15s ease-in-out;background-image:url("data:image/svg+xml;charset=utf-8,%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 8 4 4 4-4'/%3E%3C/svg%3E")}.select-status.status-approved,.select-status.status-paid{color:#166534;background-color:#dcfce7;border-color:#1665344d}.select-status.status-approved:hover,.select-status.status-paid:hover{background-color:#d1fadf}.select-status.status-rejected,.select-status.status-unpaid{color:#991b1b;background-color:#fee2e2;border-color:#991b1b4d}.select-status.status-rejected:hover,.select-status.status-unpaid:hover{background-color:#fed7d7}.select-status.status-pending{color:#854d0e;background-color:#fef9c3;border-color:#854d0e4d}.select-status.status-pending:hover{background-color:#fef5b1}.select-status.status-cancelled,.select-status.status-refunded{color:#475569;background-color:#f1f5f9;border-color:#4755694d}.select-status.status-cancelled:hover,.select-status.status-refunded:hover{background-color:#e2e8f0}.select-status:focus{outline:2px solid transparent;outline-offset:2px;box-shadow:0 0 0 2px #fff,0 0 0 4px #22c55e}.select-status.status-yes{color:#166534;background-color:#dcfce7;border-color:#1665344d}.select-status.status-yes:hover{background-color:#d1fadf}.select-status.status-no{color:#475569;background-color:#f1f5f9;border-color:#4755694d}.select-status.status-no:hover{background-color:#e2e8f0}.select-status option{color:#374151;font-weight:400;background-color:#fff;padding:.5rem}.sheets-container{height:calc(100vh - 340px);overflow:overlay;overflow:auto;position:relative;background:#fff;border-radius:.5rem;box-shadow:0 1px 3px #0000001a,0 1px 2px #0000000f}.sheets-container thead{position:sticky;top:0;z-index:20;background:#fff;box-shadow:0 1px #0000001a}.sheets-container::-webkit-scrollbar{width:8px;height:8px}.sheets-container::-webkit-scrollbar-button{display:none}.sheets-container::-webkit-scrollbar-track{background:transparent}.sheets-container::-webkit-scrollbar-thumb{background:#9ca3af80;border-radius:4px}.sheets-container::-webkit-scrollbar-thumb:hover{background:#6b7280b3}.sheets-container::-webkit-scrollbar-corner{background:transparent}.sheets-container th,.sheets-container td{position:relative}.card-hover{transition:box-shadow .3s ease,transform .3s ease}.card-hover:hover{box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;transform:translateY(-2px)}.card-loading{position:relative;overflow:hidden}.card-loading:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:#fffc;z-index:1}.application-card{background:#fff;border-radius:.5rem;box-shadow:0 1px 3px #0000001a,0 1px 2px #0000000f;padding:1.5rem;min-height:320px;display:flex;flex-direction:column}.application-card.empty{background:#f9fafb;border:2px dashed #d1d5db;justify-content:center;align-items:center;text-align:center}.application-card.empty .empty-icon{width:3rem;height:3rem;color:#9ca3af;margin-bottom:1rem}.application-card.empty .empty-title{font-size:.875rem;font-weight:600;color:#111827;margin-bottom:.25rem}.application-card.empty .empty-message{font-size:.875rem;color:#6b7280}.application-card .card-year{display:inline-block;background:#0c6568;color:#fff;padding:.25rem .75rem;border-radius:9999px;font-size:.875rem;font-weight:600;margin-bottom:1rem}.application-card .status-row{display:flex;gap:.75rem;margin-bottom:1.25rem}.application-card .status-row .status-badge{display:inline-flex;align-items:center;padding:.125rem .625rem;border-radius:9999px;font-size:.75rem;font-weight:500}.application-card .status-row .status-badge.approved{background:#dcfce7;color:#166534}.application-card .status-row .status-badge.pending{background:#fef9c3;color:#854d0e}.application-card .status-row .status-badge.rejected{background:#fee2e2;color:#991b1b}.application-card .status-row .status-badge.cancelled{background:#f3f4f6;color:#1f2937}.application-card .status-row .status-badge.paid{background:#dcfce7;color:#166534}.application-card .status-row .status-badge.unpaid{background:#fee2e2;color:#991b1b}.application-card .status-row .status-badge.refunded{background:#f3f4f6;color:#1f2937}.application-card .details-section{flex:1}.application-card .details-section .detail-row{display:flex;justify-content:space-between;align-items:start;padding:.5rem 0;border-bottom:1px solid #f3f4f6}.application-card .details-section .detail-row:last-child{border-bottom:none}.application-card .details-section .detail-row .detail-label{font-size:.75rem;color:#4b5563;font-weight:500}.application-card .details-section .detail-row .detail-value{font-size:.75rem;color:#111827;text-align:right;max-width:60%}.application-card .details-section .detail-row .detail-value.space-allocated{line-height:1.4}.application-card .details-section .detail-row .detail-value.space-allocated .space-item{display:block}.application-card .details-section .detail-row .detail-value.space-allocated .space-placement{color:#4b5563;font-style:italic;margin-top:.25rem}.application-card .details-section .detail-row .detail-value.yes{color:#15803d;font-weight:600}.application-card .details-section .detail-row .detail-value.no{color:#6b7280}.application-card .notes-section{margin-top:1rem;padding-top:1rem;border-top:1px solid #e5e7eb}.application-card .notes-section .notes-label{font-size:.75rem;color:#4b5563;font-weight:500;margin-bottom:.25rem}.application-card .notes-section .notes-content{font-size:.75rem;color:#374151;line-height:1.4}.badge-active{background-color:#22c55e;color:#fff}.badge-inactive{background-color:#ef4444;color:#fff}.badge-pending{background-color:#facc15;color:#fff}.tooltip-container{position:relative}.tooltip-container:hover .tooltip-content{visibility:visible;opacity:1}.tooltip-content{visibility:hidden;opacity:0;position:absolute;z-index:1100;background-color:#333;color:#fff;padding:.25rem .5rem;border-radius:.25rem;font-size:.75rem;white-space:nowrap;transition:opacity .3s;pointer-events:none}.tooltip-top{bottom:100%;left:50%;transform:translate(-50%);margin-bottom:.25rem}.tooltip-bottom{top:100%;left:50%;transform:translate(-50%);margin-top:.25rem}.tooltip-left{right:100%;top:50%;transform:translateY(-50%);margin-right:.25rem}.tooltip-right{left:100%;top:50%;transform:translateY(-50%);margin-left:.25rem}.popover-tooltip{position:relative;display:inline-block;border-bottom:1px dotted black;cursor:help}.popover-tooltip:hover .popover-tooltip-text{visibility:visible}.popover-tooltip-text{visibility:hidden;background-color:#000;color:#fff;padding:5px 10px;min-width:150px;text-align:center;border-radius:6px;font-size:.8rem;font-family:Inter,sans-serif;font-weight:400;position:absolute;z-index:1;top:135%;left:50%;transform:translate(-50%)}.popover-tooltip-text:after{content:"";position:absolute;bottom:100%;left:50%;margin-left:-5px;border-width:5px;border-style:solid;border-color:transparent transparent #000 transparent}.toaster-container{position:fixed;top:1rem;right:1rem;z-index:1200;pointer-events:none}.toaster-item{pointer-events:auto;margin-bottom:.5rem}@keyframes dropdownOpen{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.dropdown-open{animation:dropdownOpen .2s ease-out}.loading-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background-color:#ffffffe6;display:flex;align-items:center;justify-content:center;z-index:100}.text-11{font-size:11px}.space{display:inline-flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:600;cursor:pointer;transition:all .15s ease-in-out;position:relative;overflow:visible}.space-full-h{width:100px;height:50px}.space-full-v{width:50px;height:100px}.space-half{width:50px;height:50px}.space-table{background:#fff}.space-floor{background:#e5e7eb}.space-table.vendor-assigned{border:2px solid #2563eb!important;color:#2563eb!important}.space-floor.vendor-assigned{border:2px solid #6b7280!important;color:#6b7280!important}.space:hover{opacity:.8;z-index:10}.space-assigned:hover{opacity:.9}.isle{display:grid;gap:1px;background-color:#9ca3af;border:1px solid #9ca3af}.isle .space{display:flex;align-items:center;justify-content:center;font-size:11px;transition:all .15s ease-in-out}.isle .space-half{min-width:0;width:100%;height:100%}.isle .end-cap:not(.space-floor){grid-column:1;grid-row:1/span 2;background:#fff;font-size:14px;font-weight:600}.isle .end-cap.space-floor{grid-column:1;grid-row:1/span 2;background:#e5e7eb;font-size:14px;font-weight:600}.isle .vendor-assigned{position:relative;font-weight:600;font-size:11px;color:#1e40af;cursor:move;text-align:center}.isle .vendor-assigned.span-2{grid-column:span 2}.isle .vendor-assigned.span-1{grid-column:span 1}.isle .space-table.vendor-assigned{border:1px solid rgba(0,0,0,.1)!important;background-color:#dbeafe;color:#2563eb!important}.isle .space-floor.vendor-assigned{border:1px solid rgba(0,0,0,.1)!important;color:#6b7280!important}.isle-horizontal{grid-template-rows:repeat(2,50px)}.isle-horizontal.isle-16{grid-template-columns:50px repeat(16,50px)}.isle-horizontal.isle-14{grid-template-columns:50px repeat(14,50px)}.isle-horizontal.isle-12{grid-template-columns:50px repeat(12,50px)}.isle-vertical{grid-template-columns:50px}.column{display:grid;gap:1px;background-color:#9ca3af;border:1px solid #9ca3af}.column .space{display:flex;align-items:center;justify-content:center;font-size:11px;transition:background-color .15s ease-in-out,border-color .15s ease-in-out;min-width:0;width:100%;height:100%}.column .vendor-assigned{position:relative;font-weight:600;font-size:11px;cursor:move;text-align:center;z-index:10;transition:none}.column .space-table.vendor-assigned{border:1px solid #2563eb!important;background-color:#dbeafe;color:#2563eb!important}.column .space-floor.vendor-assigned{border:1px solid #6b7280!important;color:#6b7280!important}.column-vertical{grid-template-columns:50px}.column-vertical.column-o{grid-template-rows:repeat(14,50px)}.column-vertical.column-p{grid-template-rows:repeat(18,50px)}.column.column-tu{grid-template-columns:50px 50px;grid-template-rows:repeat(14,50px);gap:1px;background-color:#9ca3af;border:1px solid #9ca3af}.column-tu .space{display:flex;align-items:center;justify-content:center;font-size:11px;transition:all .15s ease-in-out;min-width:0;width:100%;height:100%}.column-tu .vendor-assigned{position:relative;font-weight:600;font-size:11px;cursor:move;text-align:center}.column-tu .vendor-assigned.span-1{grid-row:span 1}.column-tu .space-table.vendor-assigned{border:1px solid #2563eb!important;background-color:#dbeafe;color:#2563eb!important}.column-tu .space-floor.vendor-assigned{border:1px solid #6b7280!important;color:#6b7280!important}.column-tu .end-cap{grid-column:1/3}.electricity-icon{position:absolute;top:2px;right:2px;font-size:12px;line-height:1;pointer-events:none}.isle .vendor-assigned span[data-row]:before,.column .vendor-assigned span[data-row]:before,.column-tu .vendor-assigned span[data-row]:before,#outsideLayout .vendor-assigned span[data-row]:before{content:attr(data-space-id);position:absolute;font-size:10px;font-weight:600;color:#6b7280;white-space:nowrap;pointer-events:none}.isle .vendor-assigned span[data-row=A]:before{top:-20px;left:50%;transform:translate(-50%)}.isle .vendor-assigned span[data-row=B]:before{bottom:-20px;top:auto;left:50%;transform:translate(-50%)}.isle .vendor-assigned span[data-row=C]:before{top:-20px;left:50%;transform:translate(-50%)}.isle .vendor-assigned span[data-row=D]:before{bottom:-20px;top:auto;left:50%;transform:translate(-50%)}.isle .vendor-assigned span[data-row=E]:before{top:-20px;left:50%;transform:translate(-50%)}.isle .vendor-assigned span[data-row=F]:before{bottom:-20px;top:auto;left:50%;transform:translate(-50%)}.isle .vendor-assigned span[data-row=G]:before{top:-20px;left:50%;transform:translate(-50%)}.isle .vendor-assigned span[data-row=H]:before{bottom:-20px;top:auto;left:50%;transform:translate(-50%)}.isle .vendor-assigned span[data-row=I]:before{top:-20px;left:50%;transform:translate(-50%)}.isle .vendor-assigned span[data-row=J]:before{bottom:-20px;top:auto;left:50%;transform:translate(-50%)}.isle .vendor-assigned span[data-row=K]:before{top:-20px;left:50%;transform:translate(-50%)}.isle .vendor-assigned span[data-row=L]:before{bottom:-20px;top:auto;left:50%;transform:translate(-50%)}.isle .vendor-assigned span[data-row=M]:before{top:-20px;left:50%;transform:translate(-50%)}.isle .vendor-assigned span[data-row=N]:before{bottom:-20px;top:auto;left:50%;transform:translate(-50%)}.column-o .vendor-assigned span[data-row=O]:before{left:-30px;right:auto;top:50%;transform:translateY(-50%)}.column-p .vendor-assigned span[data-row=P]:before{right:-30px;left:auto;top:50%;transform:translateY(-50%)}#qColumn .flex-col .vendor-assigned span[data-row=Q]:before{left:-30px;right:auto;top:50%;transform:translateY(-50%)}#qColumn>.column>.flex:first-child .vendor-assigned span[data-row=Q]:before{top:-20px;bottom:auto;left:50%;transform:translate(-50%)}#qColumn>.column>.flex:first-child .vendor-assigned span[data-row=Q][data-position="3"]:before{left:-30px;right:auto;top:50%;bottom:auto;transform:translateY(-50%)}#vColumn .flex-col .vendor-assigned span[data-row=V]:before{right:-30px;left:auto;top:50%;transform:translateY(-50%)}#vColumn>.column>.flex:first-child .vendor-assigned span[data-row=V]:before{top:-20px;bottom:auto;left:50%;transform:translate(-50%)}#vColumn>.column>.flex.justify-end .vendor-assigned span[data-row=V]:before{bottom:-20px;top:auto;left:50%;transform:translate(-50%)}.column-dual .vendor-assigned span[data-row=R]:before{left:-30px;right:auto;top:50%;transform:translateY(-50%)}.column-dual .vendor-assigned span[data-row=S]:before{right:-30px;left:auto;top:50%;transform:translateY(-50%)}.column-dual .vendor-assigned span[data-row=T]:before{left:-30px;right:auto;top:50%;transform:translateY(-50%)}.column-dual .vendor-assigned span[data-row=U]:before{right:-30px;left:auto;top:50%;transform:translateY(-50%)}.vendor-assigned[data-endcap-orientation=left] span[data-row]:before{left:-30px;right:auto;top:50%;transform:translateY(-50%)}.vendor-assigned[data-endcap-orientation=top] span[data-row]:before{top:-20px;bottom:auto;left:50%;transform:translate(-50%)}.vendor-assigned[data-endcap-orientation=bottom] span[data-row]:before{bottom:-20px;top:auto;left:50%;transform:translate(-50%)}.vendor-assigned[data-endcap-orientation=right] span[data-row]:before{right:-30px;left:auto;top:50%;transform:translateY(-50%)}#hallLayout .hall-main{display:flex;gap:20px}#hallLayout .side-column{display:flex;flex-direction:column}#hallLayout .side-column .space{border:1px solid #9ca3af;width:100%!important;height:100%!important;min-width:0!important;min-height:0!important;max-width:none!important;max-height:none!important}#hallLayout .isles-container{display:flex;flex-direction:column;gap:20px}#hallLayout .isle{display:grid;grid-template-columns:60px repeat(8,100px);grid-template-rows:repeat(2,50px);gap:1px;background-color:#9ca3af;border:1px solid #9ca3af}#hallLayout .isle .space{width:100%!important;height:100%!important;min-width:0!important;min-height:0!important;max-width:none!important;max-height:none!important}#hallLayout .isle-kl{grid-template-columns:60px repeat(7,100px)}#hallLayout .isle-mn{grid-template-columns:60px repeat(6,100px)}#hallLayout .end-cap{grid-row:span 2}#marqueeLayout .column-single{background-color:transparent!important;border:none!important}#marqueeLayout .column-single .space{border:1px solid #9ca3af;width:50px;height:50px;display:flex;align-items:center;justify-content:center;margin-top:-1px;margin-left:-1px}#marqueeLayout .column-single .flex-col{margin-top:-1px;margin-bottom:-1px}#marqueeLayout .column-single .vendor-assigned{flex-grow:0!important;flex-shrink:0!important}#marqueeLayout .column-dual{display:grid;grid-template-columns:50px 50px;grid-template-rows:repeat(18,50px);width:fit-content;gap:1px;background-color:#9ca3af;border:1px solid #9ca3af}#marqueeLayout .column-dual .space{width:100%;height:100%;min-width:0;min-height:0;max-width:none;max-height:none;display:flex;align-items:center;justify-content:center}#marqueeLayout .column-dual .space.space-half{height:50px}#marqueeLayout .column-dual .end-cap{height:50px;grid-column:1/3}#marqueeLayout .grid-container{margin:0 auto}#rsIsle,#tuIsle{display:flex;align-items:center}#vColumn .flex-col.items-end{flex-shrink:0}#outsideLayout .outside-perimeter-grid{display:flex;flex-direction:column;gap:0;width:fit-content;margin:0 auto}#outsideLayout .outside-top{width:fit-content;height:fit-content;display:grid;grid-template-columns:repeat(5,50px);grid-template-rows:50px;gap:1px;background-color:#9ca3af;border:1px solid #9ca3af;margin-left:auto;order:2;align-items:flex-end}#outsideLayout .outside-top .space{width:100%;height:100%;border:none}#outsideLayout .outside-top .space:not(.vendor-assigned){background-color:#fff}#outsideLayout .outside-top .vendor-assigned.span-2{grid-column:span 2}#outsideLayout .outside-middle{display:flex;gap:0}#outsideLayout .outside-middle .outside-left{display:grid;grid-template-columns:50px;grid-template-rows:repeat(6,50px);gap:1px;background-color:#9ca3af;border:1px solid #9ca3af;margin-top:1px}#outsideLayout .outside-middle .outside-left .space{width:100%;height:100%;border:none}#outsideLayout .outside-middle .outside-left .space:not(.vendor-assigned){background-color:#fff}#outsideLayout .outside-middle .outside-left .vendor-assigned.span-2{grid-row:span 2}#outsideLayout .outside-middle .outside-right{display:grid;grid-template-columns:50px;grid-template-rows:repeat(5,50px);gap:1px;background-color:#9ca3af;border:1px solid #9ca3af;order:3;margin-top:52px}#outsideLayout .outside-middle .outside-right .space{width:100%;height:100%;border:none}#outsideLayout .outside-middle .outside-right .space:not(.vendor-assigned){background-color:#fff}#outsideLayout .outside-middle .outside-right .vendor-assigned.span-2{grid-row:span 2}#outsideLayout .outside-middle .outside-center{width:250px;height:auto;background:transparent}#outsideLayout .outside-bottom{display:flex;gap:0}#outsideLayout .outside-bottom .outside-bottom-left,#outsideLayout .outside-bottom .outside-bottom-right{display:grid;grid-template-columns:repeat(2,50px);grid-template-rows:50px;gap:1px;background-color:#9ca3af;border:1px solid #9ca3af}#outsideLayout .outside-bottom .outside-bottom-left .space,#outsideLayout .outside-bottom .outside-bottom-right .space{width:100%;height:100%;border:none}#outsideLayout .outside-bottom .outside-bottom-left .space:not(.vendor-assigned),#outsideLayout .outside-bottom .outside-bottom-right .space:not(.vendor-assigned){background-color:#fff}#outsideLayout .outside-bottom .outside-bottom-left .vendor-assigned.span-2,#outsideLayout .outside-bottom .outside-bottom-right .vendor-assigned.span-2{grid-column:span 2}#outsideLayout .outside-bottom .outside-bottom-left{margin-left:52px}#outsideLayout .outside-bottom .outside-bottom-right{margin-left:auto;margin-right:52px}#outsideLayout .outside-bottom .outside-bottom-gap{width:50px;height:50px;background:transparent}#outsideLayout .outside-top .vendor-assigned span[data-row=W]:before{top:-20px;left:50%;transform:translate(-50%)}#outsideLayout .outside-left .vendor-assigned span[data-row=X]:before{left:-30px;top:50%;transform:translateY(-50%)}#outsideLayout .outside-right .vendor-assigned span[data-row=Y]:before{right:-30px;left:auto;top:50%;transform:translateY(-50%)}#outsideLayout .outside-bottom .vendor-assigned span[data-row=Z]:before,#outsideLayout .outside-bottom .vendor-assigned span[data-row=AA]:before{bottom:-20px;top:auto;left:50%;transform:translate(-50%)}#outsideLayout .outside-top .vendor-assigned,#outsideLayout .outside-left .vendor-assigned,#outsideLayout .outside-right .vendor-assigned,#outsideLayout .outside-bottom-left .vendor-assigned,#outsideLayout .outside-bottom-right .vendor-assigned{position:relative;font-weight:600;font-size:11px;cursor:move;text-align:center;z-index:10;transition:none}#outsideLayout .outside-top .space-table.vendor-assigned,#outsideLayout .outside-left .space-table.vendor-assigned,#outsideLayout .outside-right .space-table.vendor-assigned,#outsideLayout .outside-bottom-left .space-table.vendor-assigned,#outsideLayout .outside-bottom-right .space-table.vendor-assigned{border:1px solid #2563eb!important;background-color:#dbeafe;color:#2563eb!important}#outsideLayout .outside-top .space-floor.vendor-assigned,#outsideLayout .outside-left .space-floor.vendor-assigned,#outsideLayout .outside-right .space-floor.vendor-assigned,#outsideLayout .outside-bottom-left .space-floor.vendor-assigned,#outsideLayout .outside-bottom-right .space-floor.vendor-assigned{border:1px solid #6b7280!important;color:#6b7280!important}.main-hall .layout-grid{justify-content:center}.layout-gap-horizontal{gap:50px}.layout-gap-horizontal-2x{gap:100px}.layout-gap-vertical{gap:50px}.row-label{font-weight:600;font-size:.875rem;color:#374151;display:flex;align-items:center;justify-content:center}.draggable-block{transition:all .2s ease-in-out;display:flex;align-items:center;justify-content:center;border:1px solid;font-weight:600}.draggable-block:hover{transform:scale(1.05);box-shadow:0 4px 6px -1px #0000001a}.draggable-block:active{cursor:grabbing;transform:scale(.95)}.block-full-table{height:50px;background:#dbeafe;border-color:#3b82f6;color:#1e40af}.block-half-table{width:50px;height:50px;aspect-ratio:1;background:#dbeafe;border-color:#3b82f6;color:#1e40af}.block-full-floor{height:50px;background:#e5e7eb;border-color:#6b7280;color:#374151}.block-half-floor{width:50px;height:50px;aspect-ratio:1;background:#e5e7eb;border-color:#6b7280;color:#374151}.drop-target{border-color:#3b82f6!important;border-width:2px!important;border-style:dashed!important}.drag-over{background-color:#fef08a!important;border-color:#2563eb!important}.opacity-50{opacity:.25}.vendor-card.fully-allocated,.vendor-card.filtered-out{display:none}#vendorsContainer::-webkit-scrollbar{width:8px;height:8px}#vendorsContainer::-webkit-scrollbar-button{display:none}#vendorsContainer::-webkit-scrollbar-track{background:transparent}#vendorsContainer::-webkit-scrollbar-thumb{background:#9ca3af80;border-radius:4px}#vendorsContainer::-webkit-scrollbar-thumb:hover{background:#6b7280b3}#vendorsContainer::-webkit-scrollbar-corner{background:transparent}.category-legend-item{display:inline-block;cursor:help}.category-dot{transition:transform .2s ease,box-shadow .2s ease}.category-legend-item:hover .category-dot{transform:scale(1.4);box-shadow:0 2px 4px #0003}.category-tooltip{z-index:1000}.category-badge{font-weight:400;font-size:11px;border:1px solid rgba(0,0,0,.1)}.category-square{position:absolute;bottom:8px;right:8px;width:14px;height:14px;border-radius:3px;border:1px solid rgba(0,0,0,.15);cursor:help;transition:transform .2s ease,box-shadow .2s ease;z-index:10}.category-square:hover{transform:scale(1.3);box-shadow:0 2px 6px #00000040}.category-square:hover .category-square-tooltip{opacity:1}.category-square-tooltip{position:absolute;bottom:calc(100% + 8px);right:0;background-color:#1f2937;color:#fff;padding:6px 10px;border-radius:6px;font-size:11px;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .2s ease;z-index:1000}.tooltip-arrow{position:absolute;top:100%;right:6px;width:0;height:0;border-left:5px solid transparent;border-right:5px solid transparent;border-top:5px solid #1f2937}.vendor-assigned .category-square-placed{position:absolute;bottom:-1px;right:-1px;width:10px;height:10px;cursor:help;transition:transform .2s ease,box-shadow .2s ease;z-index:5}.vendor-assigned .category-square-placed:hover{transform:scale(1.3);box-shadow:0 2px 6px #00000040}.vendor-assigned .category-square-placed:hover .category-square-placed-tooltip{opacity:1}.category-square-placed-tooltip{position:absolute;bottom:calc(100% + 8px);right:0;background-color:#1f2937;color:#fff;padding:6px 10px;border-radius:6px;font-size:11px;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .2s ease;z-index:1000}.auto-layout-modal{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background-color:#00000080;z-index:9999;align-items:center;justify-content:center}.auto-layout-modal.active{display:flex}.auto-layout-modal-content{background-color:#fff;border-radius:8px;box-shadow:0 4px 6px #0000001a;width:400px;max-width:90%}.auto-layout-modal-header{padding:20px;border-bottom:1px solid #e5e7eb}.auto-layout-modal-body{padding:20px}.auto-layout-modal-footer{padding:20px;border-top:1px solid #e5e7eb;display:flex;justify-content:flex-end;gap:10px}.space.overlap-warning{border:2px solid #ef4444!important;animation:pulse-red 2s ease-in-out infinite}@keyframes pulse-red{0%,to{border-color:#ef4444;box-shadow:0 0 #ef444466}50%{border-color:#dc2626;box-shadow:0 0 0 4px #ef444433}}.overlap-warning-banner{background-color:#fef2f2;border:1px solid #fecaca;border-radius:.5rem;padding:.75rem 1rem;margin-bottom:1rem;display:flex;align-items:center;gap:.5rem}.overlap-warning-banner svg{flex-shrink:0}.overlap-warning-banner.hidden{display:none}.truncate-1{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.truncate-2{overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.truncate-3{overflow:hidden;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical}.smooth-scroll{scroll-behavior:smooth}.no-select{user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none}.focus-visible-only:focus{outline:none}.focus-visible-only:focus-visible{outline:2px solid #22c55e;outline-offset:2px}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.custom-scrollbar::-webkit-scrollbar{width:8px;height:8px}.custom-scrollbar::-webkit-scrollbar-track{background:#f3f4f6}.custom-scrollbar::-webkit-scrollbar-thumb{background:#6b7280;border-radius:4px}.custom-scrollbar::-webkit-scrollbar-thumb:hover{background:#374151}@media print{.no-print{display:none!important}.print-break-before{page-break-before:always}.print-break-after{page-break-after:always}.print-avoid-break{page-break-inside:avoid}}@media print{nav,.page-header{display:none!important}.main-hall,.outside,.marquee{page-break-after:always;break-after:page;border:none!important;box-shadow:none!important}@page{margin:.5cm}}
