@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap";.react-calendar{width:350px;max-width:100%;background:#fff;border:1px solid #a0a096;font-family:Arial,Helvetica,sans-serif;line-height:1.125em}.react-calendar--doubleView{width:700px}.react-calendar--doubleView .react-calendar__viewContainer{display:flex;margin:-.5em}.react-calendar--doubleView .react-calendar__viewContainer>*{width:50%;margin:.5em}.react-calendar,.react-calendar *,.react-calendar *:before,.react-calendar *:after{-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}.react-calendar button{margin:0;border:0;outline:none}.react-calendar button:enabled:hover{cursor:pointer}.react-calendar__navigation{display:flex;height:44px;margin-bottom:1em}.react-calendar__navigation button{min-width:44px;background:none}.react-calendar__navigation button:disabled{background-color:#f0f0f0}.react-calendar__navigation button:enabled:hover,.react-calendar__navigation button:enabled:focus{background-color:#e6e6e6}.react-calendar__month-view__weekdays{text-align:center;text-transform:uppercase;font:inherit;font-size:.75em;font-weight:700}.react-calendar__month-view__weekdays__weekday{padding:.5em}.react-calendar__month-view__weekNumbers .react-calendar__tile{display:flex;align-items:center;justify-content:center;font:inherit;font-size:.75em;font-weight:700}.react-calendar__month-view__days__day--weekend{color:#d10000}.react-calendar__month-view__days__day--neighboringMonth,.react-calendar__decade-view__years__year--neighboringDecade,.react-calendar__century-view__decades__decade--neighboringCentury{color:#757575}.react-calendar__year-view .react-calendar__tile,.react-calendar__decade-view .react-calendar__tile,.react-calendar__century-view .react-calendar__tile{padding:2em .5em}.react-calendar__tile{max-width:100%;padding:10px 6.6667px;background:none;text-align:center;font:inherit;font-size:.833em}.react-calendar__tile:disabled{background-color:#f0f0f0;color:#ababab}.react-calendar__month-view__days__day--neighboringMonth:disabled,.react-calendar__decade-view__years__year--neighboringDecade:disabled,.react-calendar__century-view__decades__decade--neighboringCentury:disabled{color:#cdcdcd}.react-calendar__tile:enabled:hover,.react-calendar__tile:enabled:focus{background-color:#e6e6e6}.react-calendar__tile--now{background:#ffff76}.react-calendar__tile--now:enabled:hover,.react-calendar__tile--now:enabled:focus{background:#ffffa9}.react-calendar__tile--hasActive{background:#76baff}.react-calendar__tile--hasActive:enabled:hover,.react-calendar__tile--hasActive:enabled:focus{background:#a9d4ff}.react-calendar__tile--active{background:#006edc;color:#fff}.react-calendar__tile--active:enabled:hover,.react-calendar__tile--active:enabled:focus{background:#1087ff}.react-calendar--selectRange .react-calendar__tile--hover{background-color:#e6e6e6}.supplier-calendar-container{padding:0;max-width:1300px;margin:0 auto;color:var(--text-color);animation:fadeIn .4s ease-out}.supplier-main-layout{display:flex;gap:30px;align-items:flex-start}.calendar-sidebar{flex:0 0 380px;background:#151b2b99;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);padding:25px;border-radius:var(--border-radius-lg);box-shadow:var(--shadow-md);border:1px solid var(--border-color)}.slots-main-content{flex:1}.date-display{margin-top:25px;padding:15px;background:#0003;border:1px solid var(--border-color);border-radius:var(--border-radius-sm);text-align:center;font-weight:600;color:var(--primary-hover);letter-spacing:.5px}h2{text-transform:uppercase;letter-spacing:1px;border-bottom:1px solid var(--border-color);padding-bottom:15px;margin-top:0;margin-bottom:25px;font-weight:700}.calendar-wrapper{margin-bottom:0;border-radius:var(--border-radius-md);overflow:hidden;box-shadow:var(--shadow-sm)}.industrial-calendar{width:100%!important;border:none!important;background:var(--surface-color-light)!important;color:var(--text-color)!important;font-family:inherit!important}.industrial-calendar .react-calendar__navigation button{color:var(--text-color)!important}.industrial-calendar .react-calendar__navigation button:enabled:hover,.industrial-calendar .react-calendar__navigation button:enabled:focus{background-color:#ffffff1a!important}.industrial-calendar .react-calendar__month-view__days__day--weekend{color:var(--danger-color)!important;background:#ef44440d!important}.industrial-calendar .react-calendar__tile{color:var(--text-color);background:transparent!important}.industrial-calendar .react-calendar__tile:enabled:hover,.industrial-calendar .react-calendar__tile:enabled:focus{background:#ffffff1a!important;border-radius:4px}.industrial-calendar .react-calendar__tile--now{background:#3b82f633!important;color:var(--primary-hover)!important;border-radius:4px}.industrial-calendar .react-calendar__tile--active{background:var(--primary-color)!important;color:#fff!important;border-radius:4px;box-shadow:0 0 10px #3b82f680}.loading-text{font-size:1.2em;font-weight:500;padding:50px;text-align:center;color:var(--text-muted)}.connection-error{padding:30px;text-align:center;background:#ef444426;color:#fca5a5;border:1px solid rgba(239,68,68,.3);border-radius:var(--border-radius-md)}.connection-error p{font-weight:600;font-size:1.1em;margin-bottom:20px}.retry-btn{background:var(--danger-color);color:#fff;border:none;padding:10px 24px;font-weight:600;text-transform:uppercase;cursor:pointer;border-radius:var(--border-radius-sm);transition:var(--transition-fast)}.retry-btn:hover{background:#dc2626;transform:translateY(-1px)}.modal-overlay{position:fixed;inset:0;background-color:#000000bf;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;justify-content:center;align-items:center;padding:20px;z-index:1000;animation:fadeIn .2s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.booking-form-modal{background:var(--surface-color);padding:30px;border-radius:var(--border-radius-lg);width:100%;max-width:500px;max-height:85vh;overflow-y:auto;box-shadow:var(--shadow-lg);border:1px solid var(--border-color);animation:slideUp .3s ease-out;position:relative}.booking-form-modal::-webkit-scrollbar{width:6px}.booking-form-modal::-webkit-scrollbar-track{background:#0003;border-radius:3px}.booking-form-modal::-webkit-scrollbar-thumb{background:var(--primary-color);border-radius:3px}.booking-form-modal::-webkit-scrollbar-thumb:hover{background:var(--primary-hover)}.booking-form-modal:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--primary-color),var(--success-color))}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.slot-details{font-weight:600;background:#ffffff0d;padding:12px;margin-bottom:25px;text-align:center;border-radius:var(--border-radius-sm);border:1px solid var(--border-color);color:var(--primary-hover);letter-spacing:.5px}.form-group{margin-bottom:18px}.form-group label{display:block;font-weight:600;margin-bottom:6px;text-transform:uppercase;font-size:.8rem;color:var(--text-muted);letter-spacing:.05em}.form-group input,.form-group select{width:100%;box-sizing:border-box;background:#0003;border:1px solid var(--border-color);color:var(--text-color);padding:10px 12px;border-radius:var(--border-radius-sm);transition:var(--transition-fast);font-family:inherit}.form-group input:focus,.form-group select:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 2px #3b82f633;background:#0000004d}.form-actions{display:flex;gap:15px;margin-top:30px}.confirm-btn{flex:2;background:linear-gradient(135deg,var(--success-color),#059669);color:#fff;border:none;padding:12px;font-weight:600;text-transform:uppercase;cursor:pointer;border-radius:var(--border-radius-sm);transition:var(--transition-normal);box-shadow:0 4px 12px #10b9814d;letter-spacing:1px}.cancel-btn{flex:1;background:#ef44441a;color:#fca5a5;border:1px solid rgba(239,68,68,.3);padding:12px;font-weight:600;text-transform:uppercase;cursor:pointer;border-radius:var(--border-radius-sm);transition:var(--transition-normal);letter-spacing:1px}.confirm-btn:hover{transform:translateY(-2px);box-shadow:0 6px 16px #10b98180}.cancel-btn:hover{background:var(--danger-color);color:#fff;border-color:var(--danger-color)}.time-grid-container{margin-top:30px;border:1px solid var(--border-color);background:var(--surface-color);width:100%;border-radius:var(--border-radius-lg);overflow:hidden;box-shadow:var(--shadow-md)}.time-grid-header{display:flex;background:#0003;color:var(--text-muted);font-weight:600;text-transform:uppercase;padding:15px;font-size:.85rem;letter-spacing:.05em;border-bottom:1px solid var(--border-color)}.time-col-header{width:150px}.slot-col-header{flex:1}.time-grid-body{max-height:600px;overflow-y:auto}.time-row{display:flex;border-bottom:1px solid var(--border-color);min-height:60px;align-items:stretch;transition:var(--transition-fast)}.time-row:last-child{border-bottom:none}.time-label{width:150px;padding:15px;background:#00000026;border-right:1px solid var(--border-color);display:flex;align-items:center;justify-content:center;font-weight:600;font-family:Inter,monospace;font-size:1.1em;color:var(--text-color);white-space:nowrap;flex-shrink:0}.slot-action-area{flex:1;display:flex;align-items:center;padding:0 20px;position:relative}.status-indicator-bar{position:absolute;left:0;top:0;bottom:0;width:6px}.status-indicator-bar.available{background-color:var(--success-color)}.status-indicator-bar.pending{background-color:var(--warning-color)}.status-indicator-bar.approved{background-color:var(--success-color)}.status-indicator-bar.blocked{background-color:var(--danger-color)}.slot-details-inline{display:flex;justify-content:space-between;width:100%;align-items:center}.status-text{font-weight:600;font-size:.9em;letter-spacing:.5px;text-transform:uppercase}.time-row.pending .status-text{color:var(--warning-color)}.time-row.approved .status-text{color:var(--success-color)}.grid-book-btn{background:linear-gradient(135deg,var(--primary-color),#2563eb);color:#fff;border:none;padding:8px 24px;font-weight:600;text-transform:uppercase;cursor:pointer;border-radius:var(--border-radius-sm);transition:var(--transition-normal);box-shadow:0 4px 12px #3b82f64d}.grid-book-btn:hover{transform:translateY(-2px);box-shadow:0 6px 16px #3b82f666}.occupied-msg{color:var(--text-muted);font-size:.9em}.my-ticket-badge{color:var(--success-color);font-weight:600;font-size:.95em;background:#10b9811a;padding:4px 10px;border-radius:var(--border-radius-sm);border:1px solid rgba(16,185,129,.2)}.time-row.pending{background-color:#f59e0b0d}.time-row.approved{background-color:#10b9810d}.time-row.blocked{background-color:#ef44440d}.time-row:hover:not(.blocked){background-color:#ffffff08}.no-slots-msg{padding:50px;text-align:center;font-weight:500;color:var(--text-muted);background:var(--surface-color);font-size:1.1em}.booking-status-card{border:1px solid var(--border-color);background:var(--surface-color);padding:35px;max-width:650px;margin:40px auto;border-radius:var(--border-radius-lg);box-shadow:var(--shadow-lg);color:var(--text-color);position:relative;overflow:hidden}.booking-status-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px}.booking-status-card.pending:before{background:var(--warning-color)}.booking-status-card.approved:before{background:var(--success-color)}.booking-status-card.rejected:before{background:var(--danger-color)}.status-header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--border-color);margin-bottom:25px;padding-bottom:15px}.status-header h3{margin:0;text-transform:uppercase;letter-spacing:.5px;font-weight:700}.request-id-tag{background:#ffffff1a;color:var(--primary-hover);padding:6px 12px;font-weight:600;font-family:Inter,monospace;border-radius:var(--border-radius-sm);border:1px solid var(--border-color)}.status-content p{margin:12px 0;font-size:1.05em;color:var(--text-muted)}.status-content strong{color:var(--text-color)}.status-message{margin-top:25px;padding:18px;display:flex;align-items:center;gap:15px;font-weight:600;border-radius:var(--border-radius-sm)}.status-message.pending{background:#f59e0b26;color:#fbbf24;border:1px solid rgba(245,158,11,.3)}.status-message.rejected{background:#ef444426;color:#fca5a5;border:1px solid rgba(239,68,68,.3)}.entry-code-display{margin-top:25px;padding:25px;background:#10b9811a;border:2px dashed rgba(16,185,129,.4);border-radius:var(--border-radius-md);text-align:center}.entry-code-display .label{font-size:.85em;text-transform:uppercase;color:var(--success-color);margin-bottom:8px;font-weight:600;letter-spacing:1px}.entry-code-display .code{font-size:3.5em;font-weight:700;font-family:Inter,monospace;letter-spacing:6px;color:var(--text-color);text-shadow:0 0 20px rgba(16,185,129,.3)}.entry-code-display .hint{font-size:.85em;color:var(--text-muted);margin-top:15px}.new-booking-btn{margin-top:35px;width:100%;padding:15px;background:linear-gradient(135deg,var(--primary-color),#2563eb);color:#fff;border:none;font-weight:600;text-transform:uppercase;cursor:pointer;border-radius:var(--border-radius-sm);transition:var(--transition-normal);letter-spacing:1px;box-shadow:0 4px 12px #3b82f64d}.new-booking-btn:hover{transform:translateY(-2px);box-shadow:0 6px 16px #3b82f666}.spinner-small{width:20px;height:20px;border:3px solid rgba(255,255,255,.1);border-top-color:var(--warning-color);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.dispatcher-hub{padding:0;background:transparent;color:var(--text-color);animation:fadeIn .4s ease-out}.hub-header{display:flex;justify-content:space-between;align-items:center;background:#151b2b99;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);padding:25px 35px;margin-bottom:35px;border-radius:var(--border-radius-lg);box-shadow:var(--shadow-md);border:1px solid var(--border-color)}.hub-header h2{margin:0;text-transform:uppercase;letter-spacing:1px;font-size:1.8em;font-weight:700;background:linear-gradient(90deg,#fff,var(--text-muted));-webkit-background-clip:text;-webkit-text-fill-color:transparent}.hub-controls{display:flex;gap:15px}.hub-search,.hub-select{padding:10px 16px;font-weight:500;font-size:1rem}.refresh-btn{background:#ffffff0d;color:var(--text-color);border:1px solid var(--border-color);padding:10px 18px;cursor:pointer;font-weight:600;font-size:1rem;border-radius:var(--border-radius-sm);transition:var(--transition-normal)}.refresh-btn:hover{background:#ffffff1a;box-shadow:0 0 10px #ffffff1a}.hub-table-wrapper{margin-top:20px;overflow-x:auto;background:var(--surface-color);border-radius:var(--border-radius-lg);border:1px solid var(--border-color);box-shadow:var(--shadow-md)}.bookings-table{width:100%;border-collapse:collapse;min-width:1200px}.bookings-table th,.bookings-table td{padding:24px 32px;border-bottom:1px solid var(--border-color);text-align:left;vertical-align:middle;font-size:1.1rem}.bookings-table th{background:#0003;font-weight:700;color:var(--text-muted);text-transform:uppercase;font-size:1rem;letter-spacing:.05em;border-bottom:1px solid rgba(255,255,255,.15)}.bookings-table tbody tr{transition:var(--transition-fast)}.bookings-table tbody tr:hover{background:#ffffff08}.status-row-pending{border-left:4px solid var(--warning-color)}.status-row-approved{border-left:4px solid var(--success-color)}.status-row-rejected{border-left:4px solid var(--danger-color)}.col-time{font-family:Inter,monospace;font-size:1.3em;font-weight:700;white-space:nowrap;color:var(--text-color)}.col-time small{font-size:.85em;color:var(--text-muted);display:block;margin-top:6px;font-weight:500}.col-company{font-size:1.3em;color:var(--primary-hover);font-weight:600}.col-plate{font-size:1.3em;font-weight:700;letter-spacing:.5px;color:var(--text-color)}.col-load{font-size:1.15em;font-weight:600;color:var(--text-color)}.col-load small{color:var(--text-muted);font-size:.9em;display:block;margin-top:6px;font-weight:500}.col-actions{display:flex;gap:10px;justify-content:flex-start;flex-wrap:nowrap}.status-badge{display:inline-block;padding:6px 12px;font-size:.85em;font-weight:700;border-radius:var(--border-radius-sm);text-transform:uppercase;letter-spacing:.05em;box-shadow:0 2px 8px #0003}.status-badge.pending{background:#f59e0b33;color:var(--warning-color);border:1px solid rgba(245,158,11,.3)}.status-badge.approved{background:#10b98133;color:var(--success-color);border:1px solid rgba(16,185,129,.3)}.status-badge.rejected{background:#ef444433;color:var(--danger-color);border:1px solid rgba(239,68,68,.3)}.row-ticket{margin-top:8px;padding:6px 10px;background:#10b9811a;border:1px dashed rgba(16,185,129,.5);border-radius:var(--border-radius-sm);font-size:.9em;display:inline-block}.row-ticket strong{font-family:Inter,monospace;font-size:1.1em;color:var(--success-color)}.action-btn{width:38px;height:38px;display:flex;align-items:center;justify-content:center;border:1px solid var(--border-color);background:#ffffff0d;cursor:pointer;font-size:1.2em;border-radius:var(--border-radius-sm);transition:var(--transition-fast);padding:0;color:var(--text-color)}.action-btn:hover{transform:translateY(-2px);box-shadow:0 4px 8px #0000004d}.approve-btn{color:var(--success-color);border-color:#10b9814d}.approve-btn:hover{background:var(--success-color);color:#fff}.reject-btn{color:var(--danger-color);border-color:#ef44444d}.reject-btn:hover{background:var(--danger-color);color:#fff}.reset-btn{color:var(--text-muted);border-color:#94a3b84d}.reset-btn:hover{background:var(--text-muted);color:#fff}.delete-btn{color:var(--danger-color);border-color:#ef44444d}.delete-btn:hover{background:var(--danger-color);color:#fff}.pagination-controls{display:flex;justify-content:center;align-items:center;gap:15px;margin-top:30px;font-size:1em;font-weight:500;color:var(--text-muted)}.pagination-controls button{padding:10px 18px;border:1px solid var(--border-color);background:var(--surface-color);color:var(--text-color);border-radius:var(--border-radius-sm);cursor:pointer;font-weight:600;font-size:.9em;transition:var(--transition-fast)}.pagination-controls button:hover:not(:disabled){background:var(--surface-color-light);border-color:var(--primary-hover)}.pagination-controls button:disabled{opacity:.4;cursor:not-allowed}.no-results{text-align:center;padding:60px;color:var(--text-muted);font-size:1.2em}.edit-modal{background:var(--surface-color);padding:35px;border-radius:var(--border-radius-lg);width:100%;max-width:480px;box-shadow:var(--shadow-lg);border:1px solid var(--border-color);animation:slideUp .3s ease-out;position:relative;overflow:hidden}.edit-modal:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--primary-color),var(--success-color))}.request-id-display{background:#ffffff0d;padding:8px 12px;font-weight:600;font-family:Inter,monospace;display:inline-block;margin-bottom:25px;border-radius:var(--border-radius-sm);border:1px solid var(--border-color);color:var(--primary-hover);letter-spacing:.5px}.modal-actions{display:flex;gap:15px;margin-top:30px}.save-btn{flex:2;background:linear-gradient(135deg,var(--success-color),#059669);color:#fff;border:none;padding:12px;font-weight:600;text-transform:uppercase;cursor:pointer;border-radius:var(--border-radius-sm);transition:var(--transition-normal);box-shadow:0 4px 12px #10b9814d;letter-spacing:1px}.save-btn:hover{transform:translateY(-2px);box-shadow:0 6px 16px #10b98166}.cancel-btn{flex:1;background:#ffffff0d;color:var(--text-muted);border:1px solid var(--border-color);padding:12px;font-weight:600;text-transform:uppercase;cursor:pointer;border-radius:var(--border-radius-sm);transition:var(--transition-normal);letter-spacing:1px}.cancel-btn:hover{background:#ffffff1a;color:var(--text-color)}.block-manager-modal{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:var(--surface-color);padding:30px;border-radius:var(--border-radius-lg);box-shadow:var(--shadow-lg);border:1px solid var(--border-color);z-index:1000;width:90vw;max-width:1000px;max-height:90vh;overflow-y:auto;color:var(--text-color);animation:scaleIn .3s ease-out}@keyframes scaleIn{0%{opacity:0;transform:translate(-50%,-45%)}to{opacity:1;transform:translate(-50%,-50%)}}.block-manager-modal h2{margin-top:0;border-bottom:1px solid var(--border-color);padding-bottom:15px;margin-bottom:25px;color:var(--primary-color);font-weight:600;letter-spacing:-.5px}.block-manager-layout{display:flex;gap:30px}.block-manager-form{flex:1.5;display:flex;flex-direction:column;gap:25px}.selection-area{display:flex;gap:20px}.selection-box{flex:1;border:1px solid var(--border-color);border-radius:var(--border-radius-md);padding:20px;text-align:center;cursor:pointer;transition:var(--transition-normal);background:#0003}.selection-box:hover{background:#ffffff0d}.selection-box.active-mode{background:#ef44441a;border-color:var(--danger-color);box-shadow:0 0 15px #ef444433}.selection-box h4{margin-top:0;margin-bottom:10px;color:var(--text-color);font-weight:600}.selection-indicator{margin-top:15px;padding:10px;background:#0000004d;border-radius:var(--border-radius-sm);font-size:.9rem;color:var(--primary-hover)}.instruction-text{font-size:.85rem;color:var(--text-muted);margin-top:10px}.block-options{display:flex;flex-direction:column;gap:15px;background:#ffffff05;padding:20px;border-radius:var(--border-radius-md);border:1px solid var(--border-color)}.block-options label{display:flex;flex-direction:column;font-size:.85rem;color:var(--text-muted);text-transform:uppercase;font-weight:600;gap:8px}.reason-input{padding:10px;background:#0000004d;border:1px solid var(--border-color);border-radius:var(--border-radius-sm);color:var(--text-color);width:100%}.block-buttons{display:flex;gap:15px;margin-top:10px}.block-buttons button{flex:1;padding:12px;border:none;border-radius:var(--border-radius-sm);font-weight:600;text-transform:uppercase;cursor:pointer;transition:var(--transition-normal);letter-spacing:.5px}.block-buttons button:first-child{background:linear-gradient(135deg,var(--danger-color),#b91c1c);color:#fff;box-shadow:0 4px 12px #ef44444d}.block-buttons button:last-child{background:transparent;color:var(--text-muted);border:1px solid var(--border-color)}.block-buttons button:first-child:hover{transform:translateY(-2px);box-shadow:0 6px 16px #ef444466}.block-buttons button:last-child:hover{background:#ffffff0d;color:var(--text-color)}.time-grid-selector{display:grid;grid-template-columns:repeat(auto-fill,minmax(70px,1fr));gap:8px;margin-top:15px}.time-slot-btn{padding:8px;font-size:.85rem;background:#0003;border:1px solid var(--border-color);border-radius:var(--border-radius-sm);cursor:pointer;color:var(--text-color);transition:var(--transition-fast)}.time-slot-btn:hover{background:#ffffff1a}.time-slot-btn.selected{background:#ef444433;color:var(--danger-color);border-color:var(--danger-color)}.time-slot-btn.drag-over{background:#ef444466}.block-manager-list{flex:1;background:#0003;padding:20px;border-radius:var(--border-radius-md);border:1px solid var(--border-color);max-height:600px;overflow-y:auto}.block-manager-list h3{margin-top:0;color:var(--text-color);margin-bottom:20px;font-weight:600}.rule-item{background:var(--surface-color);border-left:4px solid var(--danger-color);padding:15px;margin-bottom:15px;border-radius:var(--border-radius-sm);display:flex;justify-content:space-between;align-items:center;box-shadow:var(--shadow-sm);border:1px solid var(--border-color)}.delete-rule-btn{background:#ef444426;color:#fca5a5;border:1px solid rgba(239,68,68,.3);border-radius:var(--border-radius-sm);padding:8px;cursor:pointer;transition:var(--transition-fast)}.delete-rule-btn:hover{background:var(--danger-color);color:#fff}@media(max-width:768px){.block-manager-layout,.selection-area{flex-direction:column}}.user-management-container{display:flex;gap:2rem;padding:1rem;animation:fadeIn .4s ease-out}.create-user-card,.user-list-card{background:#151b2b99;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);padding:2rem;border-radius:var(--border-radius-lg);border:1px solid var(--border-color);flex:1;box-shadow:var(--shadow-md)}.create-user-card h3,.user-list-card h3{margin-top:0;color:var(--text-color);border-bottom:1px solid var(--border-color);padding-bottom:1rem;margin-bottom:1.5rem;font-weight:600;letter-spacing:-.5px}.user-form{display:flex;flex-direction:column;gap:1.2rem}.user-form label{font-size:.85rem;color:var(--text-muted);text-transform:uppercase;font-weight:600;letter-spacing:.05em}.create-btn{background:linear-gradient(135deg,var(--primary-color),#2563eb);color:#fff;border:none;padding:1rem;font-weight:600;border-radius:var(--border-radius-sm);cursor:pointer;margin-top:1rem;transition:var(--transition-normal);text-transform:uppercase;letter-spacing:1px}.create-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #3b82f666}.user-table{width:100%;border-collapse:collapse}.user-table th,.user-table td{padding:1rem;text-align:left;border-bottom:1px solid var(--border-color)}.user-table th{color:var(--text-muted);font-size:.85rem;text-transform:uppercase;font-weight:600;letter-spacing:.05em}.user-table tbody tr{transition:var(--transition-fast)}.user-table tbody tr:hover{background:#ffffff08}.role-badge{padding:.4rem .6rem;border-radius:var(--border-radius-sm);font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.role-badge.admin{background:#ef444426;color:#fca5a5;border:1px solid rgba(239,68,68,.3)}.role-badge.supplier{background:#10b98126;color:#6ee7b7;border:1px solid rgba(16,185,129,.3)}.success-msg{color:#6ee7b7;background:#10b98126;padding:1rem;border-radius:var(--border-radius-sm);border:1px solid rgba(16,185,129,.3)}.error-msg{color:#fca5a5;background:#ef444426;padding:1rem;border-radius:var(--border-radius-sm);border:1px solid rgba(239,68,68,.3)}.action-btn-text{background:none;border:none;cursor:pointer;font-size:1.2rem;padding:.2rem .5rem;opacity:.7;transition:opacity .2s;color:var(--text-color)}.action-btn-text:hover{opacity:1}.action-btn-text.delete:hover{color:var(--danger-color)}.dropdown-manager{padding:0;max-width:1000px;margin:0 auto;color:var(--text-color);animation:fadeIn .4s ease-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.dropdown-manager h2{border-bottom:1px solid var(--border-color);padding-bottom:15px;margin-bottom:25px;font-weight:600;letter-spacing:-.5px}.dropdown-manager>p{color:var(--text-muted);margin-bottom:30px;font-size:1.05rem}.add-option-form{background:var(--surface-color);padding:25px;border-radius:var(--border-radius-lg);margin-bottom:40px;box-shadow:var(--shadow-sm);border:1px solid var(--border-color)}.add-option-form h3{margin-top:0;margin-bottom:20px;color:var(--primary-color);font-weight:600}.add-option-form form{display:flex;gap:20px;align-items:flex-end;flex-wrap:wrap}.add-option-form .form-group{display:flex;flex-direction:column;flex:1;min-width:200px}.add-option-form label{margin-bottom:8px;font-size:.85rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;font-weight:600}.add-btn{padding:11px 24px;background:linear-gradient(135deg,var(--success-color),#059669);color:#fff;border:none;border-radius:var(--border-radius-sm);cursor:pointer;font-weight:600;transition:var(--transition-normal);box-shadow:0 4px 12px #10b9814d}.add-btn:hover{transform:translateY(-2px);box-shadow:0 6px 16px #10b98166}.category-section{margin-bottom:40px;background:var(--surface-color);border-radius:var(--border-radius-lg);border:1px solid var(--border-color);overflow:hidden;box-shadow:var(--shadow-sm)}.category-section h3{margin:0;padding:20px;background:#00000026;border-bottom:1px solid var(--border-color);font-weight:600;color:var(--text-color)}.options-table{width:100%;border-collapse:collapse}.options-table th,.options-table td{padding:16px 20px;text-align:left;border-bottom:1px solid var(--border-color)}.options-table th{background:#0003;color:var(--text-muted);font-weight:600;text-transform:uppercase;font-size:.85rem;letter-spacing:.05em}.options-table tbody tr{transition:var(--transition-fast)}.options-table tbody tr:hover{background:#ffffff08}.delete-btn{background:#ef444426;color:#fca5a5;border:1px solid rgba(239,68,68,.3);padding:6px 12px;border-radius:var(--border-radius-sm);cursor:pointer;font-weight:500;font-size:.85rem;transition:var(--transition-fast)}.delete-btn:hover{background:var(--danger-color);color:#fff;border-color:var(--danger-color)}.error-message{background:#ef444426;color:#fca5a5;padding:12px;border-radius:var(--border-radius-sm);border:1px solid rgba(239,68,68,.3);margin-bottom:20px}.success-message{background:#10b98126;color:#6ee7b7;padding:12px;border-radius:var(--border-radius-sm);border:1px solid rgba(16,185,129,.3);margin-bottom:20px}.login-container{display:flex;justify-content:center;align-items:center;min-height:80vh;background:transparent}.login-box{background:#151b2b99;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);padding:3.5rem;border-radius:var(--border-radius-lg);box-shadow:var(--shadow-lg);width:100%;max-width:420px;border:1px solid var(--border-color);position:relative;overflow:hidden}.login-box:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--primary-color),var(--secondary-color))}.login-box h2{color:var(--text-color);margin-bottom:.5rem;text-align:center;font-family:Inter,monospace;font-weight:700;letter-spacing:-.5px}.login-box h3{color:var(--text-muted);margin-top:0;margin-bottom:2.5rem;text-align:center;font-weight:400;font-size:1.05rem;letter-spacing:.5px}.login-form{display:flex;flex-direction:column;gap:1.5rem}.login-form .form-group{display:flex;flex-direction:column;gap:.6rem}.login-form label{font-size:.85rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;font-weight:600}.login-form input{padding:.9rem;background:#0003;border:1px solid rgba(255,255,255,.1);color:var(--text-color);border-radius:var(--border-radius-sm);font-size:1rem;transition:var(--transition-normal)}.login-form input:focus{outline:none;border-color:var(--primary-color);background:#0006;box-shadow:0 0 0 3px #3b82f633}.login-button{background:linear-gradient(135deg,var(--primary-color),#2563eb);color:#fff;border:none;padding:1rem;font-size:1rem;font-weight:600;cursor:pointer;border-radius:var(--border-radius-sm);margin-top:1rem;text-transform:uppercase;letter-spacing:1px;transition:var(--transition-normal);box-shadow:0 4px 14px #3b82f666}.login-button:hover{transform:translateY(-2px);box-shadow:0 6px 20px #3b82f699}.login-button:active{transform:translateY(0)}.error-message{background:#ef444426;color:#fca5a5;padding:1rem;border-radius:var(--border-radius-sm);border:1px solid rgba(239,68,68,.3);font-size:.9rem;text-align:center}.App{text-align:center}.App-header{background:#0b0f19b3;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);padding:15px 40px;color:var(--text-color);border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;align-items:center;position:sticky;top:0;z-index:100;box-shadow:var(--shadow-md)}.header-main{display:flex;align-items:center;gap:20px}.system-badge{background:var(--warning-color);color:#000;padding:4px 12px;font-weight:700;font-size:.7em;border-radius:var(--border-radius-sm);text-transform:uppercase;letter-spacing:.1em}.App-header h1{margin:0;font-weight:600;letter-spacing:1px;font-size:1.5rem}.industrial-nav{display:flex;justify-content:center;gap:12px}.industrial-nav button{background:transparent;color:var(--text-muted);border:1px solid transparent;padding:8px 16px;cursor:pointer;font-weight:500;font-size:.95rem;border-radius:var(--border-radius-md);transition:var(--transition-normal)}.industrial-nav button:hover{background:#ffffff0d;color:var(--text-color)}.industrial-nav button.active{background:#3b82f626;color:var(--primary-color);border-color:#3b82f64d;box-shadow:var(--shadow-glow)}.link-button{background:transparent!important;border:none!important;color:var(--text-muted)!important;text-decoration:underline;cursor:pointer;font-size:.9rem;padding:0!important;text-transform:none!important;font-weight:400!important;transition:var(--transition-fast);box-shadow:none!important}.link-button:hover{color:var(--text-color)!important}main{padding:0 20px}:root{--bg-color: #0b0f19;--surface-color: #151b2b;--surface-color-light: #1e2638;--primary-color: #3b82f6;--primary-hover: #60a5fa;--secondary-color: #8b5cf6;--text-color: #f8fafc;--text-muted: #94a3b8;--border-color: rgba(255, 255, 255, .12);--success-color: #10b981;--warning-color: #f59e0b;--danger-color: #ef4444;--border-width: 1px;--border-radius-sm: 6px;--border-radius-md: 10px;--border-radius-lg: 16px;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .4);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .4), 0 2px 4px -1px rgba(0, 0, 0, .2);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .4), 0 4px 6px -2px rgba(0, 0, 0, .2);--shadow-glow: 0 0 15px rgba(59, 130, 246, .3);--transition-fast: .15s ease-in-out;--transition-normal: .25s ease-in-out}html{font-size:14px;zoom:.85}body{margin:0;font-family:Inter,system-ui,-apple-system,sans-serif;background-color:var(--bg-color);background-image:radial-gradient(circle at 15% 50%,rgba(59,130,246,.08),transparent 25%),radial-gradient(circle at 85% 30%,rgba(139,92,246,.08),transparent 25%);background-attachment:fixed;color:var(--text-color);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}button{font-family:inherit}.App{display:flex;flex-direction:column;min-height:100vh}main{flex:1;padding:40px 20px}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-color)}::-webkit-scrollbar-thumb{background:var(--surface-color-light);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}
