*,:before,:after{box-sizing:border-box;-webkit-user-select:none;user-select:none;cursor:auto;margin:0;padding:0}body{color:#2c3e50;background:#f5f6fa;min-height:100vh;font-family:Segoe UI,system-ui,sans-serif}.modal-backdrop{z-index:100;background:#00000073;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.locker-modal{background:#fff;border-radius:12px;flex-direction:column;width:100%;max-width:800px;max-height:85vh;display:flex;position:relative;overflow:hidden;box-shadow:0 20px 60px #00000040}.locker-modal__header{color:#fff;background:#2c3e50;flex-shrink:0;justify-content:space-between;align-items:center;padding:1rem 1.25rem;display:flex}.locker-modal__title-group{align-items:baseline;gap:.6rem;display:flex}.locker-modal__title{font-size:1.15rem;font-weight:800}.locker-modal__group{color:#fff9;letter-spacing:.04em;font-size:.78rem;font-weight:600}.locker-modal__close{color:#ffffffb3;cursor:pointer;background:0 0;border:none;border-radius:4px;padding:.2rem .4rem;font-size:1.1rem;line-height:1}.locker-modal__close:hover{color:#fff;background:#ffffff26}.locker-modal__body{flex:1;min-height:0;overflow-y:auto}.locker-modal__status{color:#7f8c8d;text-align:center;padding:1.5rem}.locker-modal__error{color:#c0392b;background:#fdecea;border:1px solid #f5c6cb;border-radius:6px;margin:.75rem 1.25rem 0;padding:.6rem .9rem;font-size:.85rem}.locker-modal__info{border-bottom:1px solid #dde1e7;flex-direction:column;gap:.5rem;padding:1rem 1.25rem .6rem;display:flex}.locker-modal__info-layout{justify-content:space-between;align-items:center;gap:1.5rem;display:flex}.locker-modal__lock-state-panel{flex-direction:column;flex-shrink:0;align-items:center;gap:.3rem;padding-top:.1rem;display:flex}.locker-modal__lock-state-icon{object-fit:contain;width:2rem;height:2rem}.locker-modal__lock-state-label{text-transform:uppercase;letter-spacing:.06em;color:#7f8c8d;white-space:nowrap;font-size:.72rem;font-weight:700}.locker-modal__info-footer{justify-content:space-between;align-items:center;gap:1rem;display:flex}.locker-modal__lock-id{color:#7f8c8d;align-self:flex-start;margin:0;font-family:monospace;font-size:.68rem}.locker-modal__rental{border-bottom:1px solid #dde1e7;padding:.75rem 1.25rem}.locker-modal__section-title{text-transform:uppercase;letter-spacing:.07em;color:#7f8c8d;margin:0 0 .5rem;font-size:.72rem;font-weight:700}.locker-modal__history{border-bottom:1px solid #dde1e7}.locker-modal__history-toggle{cursor:pointer;text-transform:uppercase;letter-spacing:.07em;color:#7f8c8d;background:0 0;border:none;justify-content:space-between;align-items:center;width:100%;padding:.7rem 1.25rem;font-size:.85rem;font-weight:700;display:flex}.locker-modal__history-toggle:hover{color:#2c3e50;background:#f8f9fb}.locker-modal__history-chevron{font-size:1.3rem}.locker-modal__history-body{border-top:1px solid #dde1e7;max-height:220px;overflow-y:auto}.locker-modal__footer{background:#f8f9fb;border-top:2px solid #dde1e7;flex-direction:column;flex-shrink:0;gap:.5rem;padding:.9rem 1.25rem;display:flex}.locker-modal__actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;display:flex}.locker-modal__actions-group{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.locker-modal__actions-divider{background:#dde1e7;border-radius:1px;flex-shrink:0;align-self:center;width:1px;height:1.6rem;margin:0 .25rem;display:inline-block}.locker-modal__confirm-overlay{z-index:10;background:#0000008c;border-radius:12px;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.locker-modal__confirm-dialog{background:#fff;border-radius:10px;flex-direction:column;width:90%;max-width:360px;display:flex;overflow:hidden;box-shadow:0 8px 32px #00000040}.locker-modal__confirm-header{color:#fff;text-transform:uppercase;letter-spacing:.07em;background:#2c3e50;padding:.75rem 1.25rem;font-size:.85rem;font-weight:700}.locker-modal__confirm-id{color:#e67e22;font-weight:800}.locker-modal__confirm-message{color:#2c3e50;text-align:center;margin:0;padding:1.25rem 1.5rem;font-size:.95rem;line-height:1.55}.locker-modal__confirm-question{margin-bottom:.5rem;font-size:1.05rem;font-weight:700;display:block}.locker-modal__confirm-detail{color:#7f8c8d;font-size:.875rem;display:block}.locker-modal__confirm-actions{justify-content:space-between;gap:.75rem;padding:.75rem 1.5rem 1.25rem;display:flex}.info-grid{grid-template-columns:auto 1fr;gap:.35rem 1.25rem;margin:0;font-size:.9rem;display:grid}.info-grid dt{color:#7f8c8d;font-weight:600}.info-grid dd{color:#2c3e50;margin:0}.info-grid .mono{color:#7f8c8d;font-family:monospace;font-size:.82rem}.rental-grid{grid-template-columns:auto 1fr auto 1fr;gap:.35rem 1rem;margin:0;font-size:.9rem;display:grid}.rental-grid dt{color:#7f8c8d;font-weight:600}.rental-grid dd{color:#2c3e50;margin:0}.rental-grid__full{grid-column:1/3}.rental-grid__full--value{grid-column:3/5}.action-btn{cursor:pointer;border:none;border-radius:6px;padding:.5rem 1.1rem;font-size:.88rem;font-weight:700;transition:opacity .15s,transform .1s}.action-btn:disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.action-btn:not(:disabled):hover{opacity:.88;transform:translateY(-1px)}.action-btn--unlock{color:#fff;background:#2ecc71;align-items:center;gap:.4rem;display:inline-flex}.action-btn--lock{color:#fff;background:#2c3e50}.action-btn--end{color:#fff;background:#7c3aed;align-items:center;gap:.4rem;display:inline-flex}.action-btn--cancel{color:#fff;background:#c0392b;align-items:center;gap:.4rem;display:inline-flex}.action-btn--print{color:#fff;background:#2980b9;align-items:center;gap:.5rem;padding:.65rem 1.4rem;font-size:.95rem;display:inline-flex}.action-btn--print:disabled{opacity:.25}.action-btn__icon{object-fit:contain;filter:brightness(0)invert();flex-shrink:0;width:1.3rem;height:1.3rem}.action-btn--secondary{color:#2c3e50;background:#f0f2f5;border:1px solid #dde1e7}.action-btn--proceed{color:#fff;background:#c0392b}.print-wristband-wrapper{flex-direction:column;align-items:flex-start;gap:.2rem;display:inline-flex}.print-wristband-wrapper__warning{color:#e67e22;font-size:.72rem;font-weight:600}.maintenance-toggle{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:.55rem;display:inline-flex}.maintenance-toggle--disabled{opacity:.5;cursor:not-allowed}.maintenance-toggle__input{opacity:0;width:0;height:0;position:absolute}.maintenance-toggle__track{background:#d0d3d8;border-radius:999px;flex-shrink:0;width:2.4rem;height:1.3rem;transition:background .2s;display:inline-block;position:relative}.maintenance-toggle__track:after{content:"";background:#fff;border-radius:50%;width:.94rem;height:.94rem;transition:transform .2s;position:absolute;top:.18rem;left:.18rem;box-shadow:0 1px 3px #00000040}.maintenance-toggle__input:checked+.maintenance-toggle__track{background:#8e44ad}.maintenance-toggle__input:checked+.maintenance-toggle__track:after{transform:translate(1.1rem)}.maintenance-toggle__label{color:#2c3e50;font-size:.88rem;font-weight:700}.maintenance-toggle__input:checked~.maintenance-toggle__label{color:#8e44ad}.rental-history-table{border-collapse:collapse;width:100%;font-size:.82rem}.rental-history-table th,.rental-history-table td{text-align:left;border-bottom:1px solid #dde1e7;padding:.4rem .6rem}.rental-history-table th{text-transform:uppercase;letter-spacing:.06em;color:#7f8c8d;background:#f8f9fb;font-size:.75rem;font-weight:600}.rental-history-table tbody tr:last-child td{border-bottom:none}.rental-history-table__active td{color:#2c3e50;font-weight:600}.active-tag{color:#1e8449;text-transform:uppercase;letter-spacing:.05em;background:#eafaf1;border:1px solid #a9dfbf;border-radius:3px;padding:.1rem .45rem;font-size:.72rem;font-weight:700;display:inline-block}.select-dropdown{position:relative}.select-dropdown[open] .select-dropdown__chevron{transform:rotate(180deg)}.select-dropdown__summary{color:#2c3e50;cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap;background:#fff;border:1px solid #dde1e7;border-radius:6px;align-items:center;gap:.4rem;padding:.32rem .65rem;font-size:.88rem;list-style:none;display:flex}.select-dropdown__summary::-webkit-details-marker{display:none}.select-dropdown__summary:hover{background:#f0f2f5}.select-dropdown__summary:focus-visible{border-color:#e67e22;outline:none;box-shadow:0 0 0 2px #e67e2233}.select-dropdown__chevron{font-size:.72rem;transition:transform .15s}.select-dropdown__options{z-index:50;background:#fff;border:1px solid #dde1e7;border-radius:8px;min-width:160px;margin:0;padding:.3rem;list-style:none;position:absolute;top:calc(100% + 4px);left:0;box-shadow:0 6px 20px #0000001f}.select-dropdown__option{color:#2c3e50;cursor:pointer;text-align:left;background:0 0;border:none;border-radius:5px;justify-content:space-between;align-items:center;gap:.5rem;width:100%;padding:.45rem .75rem;font-size:.88rem;display:flex}.select-dropdown__option:hover{background:#f0f2f5}.select-dropdown__option--active{color:#e67e22;font-weight:700}.multi-select-dropdown{position:relative}.multi-select-dropdown[open] .multi-select-dropdown__chevron{transform:rotate(180deg)}.multi-select-dropdown__summary{color:#2c3e50;cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap;background:#fff;border:1px solid #dde1e7;border-radius:6px;align-items:center;gap:.4rem;padding:.32rem .65rem;font-size:.88rem;list-style:none;display:flex}.multi-select-dropdown__summary::-webkit-details-marker{display:none}.multi-select-dropdown__summary:hover{background:#f0f2f5}.multi-select-dropdown__summary:focus-visible{border-color:#e67e22;outline:none;box-shadow:0 0 0 2px #e67e2233}.multi-select-dropdown__summary-active{color:#e67e22;font-weight:700}.multi-select-dropdown__chevron{font-size:.72rem;transition:transform .15s}.multi-select-dropdown__options{z-index:50;background:#fff;border:1px solid #dde1e7;border-radius:8px;min-width:170px;margin:0;padding:.3rem;list-style:none;position:absolute;top:calc(100% + 4px);left:0;box-shadow:0 6px 20px #0000001f}.multi-select-dropdown__divider{background:#dde1e7;height:1px;margin:.25rem .4rem}.multi-select-dropdown__option{color:#2c3e50;cursor:pointer;text-align:left;background:0 0;border:none;border-radius:5px;align-items:center;gap:.55rem;width:100%;padding:.45rem .75rem;font-size:.88rem;display:flex}.multi-select-dropdown__option:hover{background:#f0f2f5}.multi-select-dropdown__option--all-active{color:#e67e22;font-weight:700}.multi-select-dropdown__option--checked{font-weight:600}.multi-select-dropdown__check{text-align:center;color:#e67e22;flex-shrink:0;width:1rem;font-size:.85rem}.multi-select-dropdown__checkbox{accent-color:#e67e22;cursor:pointer;flex-shrink:0;width:.95rem;height:.95rem}.lockers-page{background:#f5f6fa;flex-direction:column;min-height:100vh;display:flex}.lockers-page__header{color:#fff;background:#2c3e50;align-items:center;gap:1rem;padding:1rem 2rem;display:flex}.lockers-page__tabs{background:#fff;border-bottom:2px solid #dde1e7;gap:0;padding:.5rem 1.5rem;display:flex}.lockers-page__header-actions{align-items:center;gap:.75rem;margin-left:auto;display:flex}.lockers-page__username{opacity:.75;font-size:.85rem}.lockers-page__logout-btn{color:#fff;cursor:pointer;background:0 0;border:1px solid #fff6;border-radius:4px;padding:.25rem .75rem;font-size:.8rem}.lockers-page__logout-btn:hover{background:#ffffff1a}.lockers-page__title{margin:0;font-size:1.4rem;font-weight:800}.lockers-page__title span{color:#e67e22}.lockers-page__subtitle{opacity:.65;letter-spacing:.06em;text-transform:uppercase;font-size:.85rem}.lockers-page__content{flex:1;padding:2rem}.lockers-page__toolbar{flex-direction:column;gap:.6rem;margin-bottom:1.25rem;display:flex}.lockers-page__printer-warning{color:#7d5700;background:#fff3cd;border:1px solid #ffc107;border-radius:6px;align-items:center;gap:.5rem;padding:.45rem .9rem;font-size:.85rem;font-weight:600;display:flex}.lockers-page__toolbar-top{align-items:center;gap:1rem;display:flex}.lockers-page__toolbar-top h2{color:#2c3e50;flex:1;margin:0;font-size:1.25rem}.lockers-page__toolbar-right{align-items:center;gap:.75rem;margin-left:auto;display:flex}.lockers-page__toolbar-bottom{align-items:center;gap:1rem;display:flex}.lockers-page__filter-group{background:#f0f2f5;border:1px solid #dde1e7;border-radius:8px;flex:1;align-items:center;gap:.5rem;padding:.3rem .5rem;display:flex}.lockers-page__clear-filters{color:#e67e22;cursor:pointer;white-space:nowrap;background:#e67e2214;border:1px solid #f0b37e;border-radius:2rem;align-items:center;gap:.3rem;padding:.28rem .7rem;font-size:.82rem;font-weight:700;transition:background .15s,color .15s;display:inline-flex}.lockers-page__clear-filters:before{content:"×";font-size:1rem;line-height:1}.lockers-page__clear-filters:hover{color:#fff;background:#e67e22;border-color:#e67e22}.lockers-page__view-toggle{gap:.25rem;display:flex}.lockers-page__tenant-badge{color:#fff;letter-spacing:.1em;text-transform:uppercase;background:#e67e22;border-radius:2rem;padding:.2rem .7rem;font-size:.72rem;font-weight:700}.lockers-page__availability{color:#7f8c8d;white-space:nowrap;background:#fff;border:1px solid #dde1e7;border-radius:2rem;padding:.2rem .85rem;font-size:.82rem;font-weight:500}.lockers-page__availability-count,.lockers-page__availability-total{color:#2c3e50;font-size:1rem;font-weight:700}.lockers-page__last-updated{color:#7f8c8d;margin-left:auto;font-size:.78rem}.lockers-page__search{color:#2c3e50;background:#fff;border:1px solid #dde1e7;border-radius:6px;outline:none;width:200px;padding:.35rem .75rem;font-size:.88rem}.lockers-page__search:focus{border-color:#e67e22;box-shadow:0 0 0 2px #e67e2233}.lockers-page__search::placeholder{color:#7f8c8d}.lockers-page__filters{align-items:center;gap:.5rem;display:flex}.lockers-page__sort{border-left:1px solid #dde1e7;align-items:center;gap:.4rem;margin-left:auto;padding-left:1rem;display:flex}.lockers-page__sort-label{color:#7f8c8d;white-space:nowrap;font-size:.82rem}.lockers-page__sort-dir-btn{color:#2c3e50;cursor:pointer;background:#fff;border:1px solid #dde1e7;border-radius:6px;padding:.3rem .55rem;font-size:.78rem;line-height:1}.lockers-page__sort-dir-btn:hover{background:#f0f2f5}.lockers-page__sort-dir-btn:focus{border-color:#e67e22;outline:none;box-shadow:0 0 0 2px #e67e2233}.lockers-page__status{color:#7f8c8d;font-size:.95rem}.lockers-page__error{color:#c0392b;background:#fdecea;border:1px solid #f5c6cb;border-radius:6px;padding:.75rem 1rem;font-size:.9rem}.lockers-table-wrapper{background:#fff;border:1px solid #dde1e7;border-radius:8px;overflow-x:auto}.lockers-table{border-collapse:collapse;width:100%;font-size:.9rem}.lockers-table th,.lockers-table td{text-align:left;border-bottom:1px solid #dde1e7;padding:.75rem 1rem}.lockers-table th{color:#2c3e50;text-transform:uppercase;letter-spacing:.07em;background:#f0f2f5;font-size:.8rem;font-weight:600}.lockers-table__th-sortable{cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap}.lockers-table__th-sortable:hover{background:#e1e5eb}.lockers-table__th-sorted{color:#e67e22}.lockers-table__sort-icon{margin-left:.2rem;font-size:.75rem}.lockers-table tbody tr:last-child td{border-bottom:none}.lockers-table tbody tr:hover{background:#fafbfd}.lockers-table tbody tr.clickable{cursor:pointer}.lockers-table tbody tr.occupied{background:#fef9f0}.lockers-table tbody tr.occupied:hover{background:#fdf5e7}.lockers-table tbody tr.out-of-order{opacity:.8;background:#fdecea}.lockers-table tbody tr.out-of-order:hover{background:#fce4e1}.lockers-table__visual-id{color:#2c3e50;font-weight:700}.lockers-table__group-id{color:#7f8c8d;font-size:.82rem}.lockers-table__popularity{font-variant-numeric:tabular-nums;text-align:right;color:#7f8c8d;font-size:.85rem}.lockers-table__lock-id{color:#7f8c8d;font-family:monospace;font-size:.82rem}.lockers-table__empty{text-align:center;color:#7f8c8d;padding:2rem!important}.lock-state-pills{flex-wrap:wrap;align-items:center;gap:.3rem;display:flex}.lock-state-badge{letter-spacing:.05em;text-transform:uppercase;white-space:nowrap;border-radius:2rem;padding:.2rem .65rem;font-size:.78rem;font-weight:700;display:inline-block}.lock-state-badge--locked{color:#1a56a0;background:#eaf0fb;border:1px solid #90b4e6}.lock-state-badge--open{color:#555;background:#f0f0f0;border:1px solid #ccc}.lock-state-badge--alarm{color:#c0392b;background:#fdecea;border:1px solid #f5c6cb}.lock-state-badge--maintenance{color:#d68910;background:#fef9e7;border:1px solid #f8c471}.lock-state-badge--disabled{color:#7f8c8d;background:#f5f5f5;border:1px solid #bdc3c7}.lock-state-badge--disconnected{color:#555;background:#f0f0f0;border:1px solid #999}.status-badge{letter-spacing:.05em;text-transform:uppercase;border-radius:2rem;padding:.2rem .65rem;font-size:.78rem;font-weight:700;display:inline-block}.status-badge--free{color:#1e8449;background:#eafaf1;border:1px solid #a9dfbf}.status-badge--occupied{color:#d68910;background:#fef5e7;border:1px solid #f8c471}.status-badge--out-of-order{color:#c0392b;background:#fdecea;border:1px solid #f5c6cb}.tab-btn{color:#7f8c8d;cursor:pointer;letter-spacing:.02em;background:0 0;border:none;border-bottom:3px solid #0000;margin-bottom:-2px;padding:.65rem 1.25rem;font-size:.9rem;font-weight:600;transition:color .15s,border-color .15s}.tab-btn:hover{color:#2c3e50}.tab-btn--active{color:#2c3e50;border-bottom-color:#e67e22}.view-toggle-btn{color:#7f8c8d;cursor:pointer;background:#fff;border:1px solid #dde1e7;border-radius:4px;padding:.3rem .6rem;font-size:1.1rem;line-height:1;transition:background .15s,color .15s}.view-toggle-btn:hover{color:#2c3e50;background:#f0f2f5}.view-toggle-btn--active{color:#fff;background:#2c3e50;border-color:#2c3e50}.lockers-grid{grid-template-columns:repeat(2,1fr);gap:1rem;display:grid}@media (width>=900px){.lockers-grid{grid-template-columns:repeat(3,1fr)}}.locker-card{cursor:pointer;background:#fff;border:2px solid #dde1e7;border-radius:10px;flex-direction:column;gap:.75rem;padding:1.1rem 1.25rem;transition:box-shadow .15s,transform .1s;display:flex}.locker-card:hover{transform:translateY(-2px);box-shadow:0 4px 16px #0000001a}.locker-card--occupied{background:#fef9f0;border-color:#f8c471}.locker-card--free{border-color:#a9dfbf}.locker-card--out-of-order{opacity:.8;background:#fdecea;border-color:#f5c6cb}.locker-card__header{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.locker-card__visual-id{color:#2c3e50;font-size:1.4rem;font-weight:800}.locker-card__details-group{color:#e67e22;font-weight:600}.locker-card__details{grid-template-columns:auto 1fr;gap:.3rem .75rem;margin:0;font-size:.85rem;display:grid}.locker-card__details dt{color:#7f8c8d;font-weight:600}.locker-card__details dd{color:#2c3e50;word-break:break-all;margin:0}.locker-card__lock-id{color:#7f8c8d;font-family:monospace;font-size:.8rem}.open-all-fab{z-index:200;flex-direction:column;align-items:flex-end;gap:.5rem;display:flex;position:fixed;bottom:2rem;right:2rem}.open-all-fab__btn{color:#fff;cursor:pointer;white-space:nowrap;background:#e67e22;border:none;border-radius:2rem;padding:.75rem 1.5rem;font-size:.95rem;font-weight:700;transition:background .15s,transform .1s,box-shadow .15s;box-shadow:0 4px 16px #0000002e}.open-all-fab__btn:hover:not(:disabled){background:#c96a17;transform:translateY(-2px);box-shadow:0 6px 20px #00000038}.open-all-fab__btn:disabled{opacity:.45;cursor:not-allowed}.open-all-modal__overlay{z-index:200;background:#0000008c;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.open-all-modal__dialog{background:#fff;border-radius:10px;flex-direction:column;width:90%;max-width:360px;display:flex;overflow:hidden;box-shadow:0 8px 32px #00000040}.open-all-modal__header{color:#fff;text-transform:uppercase;letter-spacing:.07em;background:#2c3e50;padding:.75rem 1.25rem;font-size:.85rem;font-weight:700}.open-all-modal__message{color:#2c3e50;text-align:center;margin:0;padding:1.25rem 1.5rem;font-size:.95rem;line-height:1.55}.open-all-modal__question{margin-bottom:.5rem;font-size:1.05rem;font-weight:700;display:block}.open-all-modal__detail{color:#7f8c8d;font-size:.875rem;display:block}.open-all-modal__actions{justify-content:space-between;gap:.75rem;padding:.75rem 1.5rem 1.25rem;display:flex}@keyframes delayed-spinner-rotate{to{transform:rotate(360deg)}}.delayed-spinner{justify-content:center;align-items:center;display:inline-flex}.delayed-spinner__ring{opacity:.6;border:2px solid;border-top-color:#0000;border-radius:50%;width:1.1em;height:1.1em;animation:.7s linear infinite delayed-spinner-rotate;display:block}.rental-detail-modal{background:#fff;border-radius:12px;flex-direction:column;width:100%;max-width:560px;max-height:85vh;display:flex;overflow:hidden;box-shadow:0 20px 60px #00000040}.rental-detail-modal__header{color:#fff;background:#2c3e50;flex-shrink:0;justify-content:space-between;align-items:center;padding:1rem 1.25rem;display:flex}.rental-detail-modal__title-group{flex-direction:column;gap:.15rem;display:flex}.rental-detail-modal__title{font-size:1.1rem;font-weight:800}.rental-detail-modal__subtitle{color:#ffffffa6;font-size:.78rem}.rental-detail-modal__end-reason{color:#ffffffd9;background:#ffffff26;border-radius:4px;align-self:flex-start;margin-top:.2rem;padding:.1rem .45rem;font-size:.75rem;font-weight:600}.rental-detail-modal__close{color:#ffffffbf;cursor:pointer;background:0 0;border:none;border-radius:4px;padding:.25rem .4rem;font-size:1.1rem;line-height:1;transition:background .15s,color .15s}.rental-detail-modal__close:hover{color:#fff;background:#ffffff26}.rental-detail-modal__body{flex:1;padding:1.25rem 1.5rem;overflow-y:auto}.rental-detail-modal__error,.rental-detail-modal__empty{color:#7f8c8d;text-align:center;padding:2rem 0}.rental-detail-modal__error{color:#c0392b}.rental-detail-modal__timeline{margin:0;padding:0;list-style:none;position:relative}.rental-detail-modal__timeline:before{content:"";background:#dde1e7;width:2px;position:absolute;top:10px;bottom:10px;left:7px}.rental-detail-modal__event{gap:1rem;padding-bottom:1.25rem;display:flex;position:relative}.rental-detail-modal__event:last-child{padding-bottom:0}.rental-detail-modal__dot{z-index:1;background:#95a5a6;border:2px solid #fff;border-radius:50%;flex-shrink:0;width:16px;height:16px;margin-top:3px;box-shadow:0 0 0 2px #95a5a6}.rental-detail-modal__dot--positive{background:#27ae60;box-shadow:0 0 0 2px #27ae60}.rental-detail-modal__dot--error{background:#c0392b;box-shadow:0 0 0 2px #c0392b}.rental-detail-modal__event-content{flex:1;min-width:0}.rental-detail-modal__event-header{flex-wrap:wrap;align-items:baseline;gap:.5rem;display:flex}.rental-detail-modal__event-type{color:#2c3e50;font-size:.88rem;font-weight:700}.rental-detail-modal__event-actor{color:#7f8c8d;background:#f0f2f4;border-radius:3px;padding:.1rem .4rem;font-size:.75rem}.rental-detail-modal__event-description{color:#444;margin:.2rem 0 .15rem;font-size:.82rem;line-height:1.4}.rental-detail-modal__event-state-badge{color:#1a56c4;letter-spacing:.01em;background:#e8f0fe;border-radius:4px;margin:.25rem 0 .2rem;padding:.2rem .6rem;font-size:.82rem;font-weight:600;display:inline-block}.rental-detail-modal__event-time{color:#7f8c8d;font-size:.75rem}.rentals-page__content{flex:1;padding:2rem}.rentals-page__toolbar{flex-wrap:wrap;align-items:center;gap:1rem;margin-bottom:1.25rem;display:flex}.rentals-page__toolbar h2{color:#2c3e50;margin:0;font-size:1.25rem}.rentals-page__date-range{align-items:center;gap:.75rem;display:flex}.rentals-page__date-range label{color:#7f8c8d;align-items:center;gap:.4rem;font-size:.85rem;font-weight:600;display:flex}.rentals-page__date-range label input[type=date]{color:#2c3e50;background:#fff;border:1px solid #dde1e7;border-radius:6px;outline:none;padding:.35rem .6rem;font-size:.88rem}.rentals-page__date-range label input[type=date]:focus{border-color:#e67e22;box-shadow:0 0 0 2px #e67e2233}.rentals-page__search{color:#2c3e50;background:#fff;border:1px solid #dde1e7;border-radius:6px;outline:none;width:200px;padding:.35rem .75rem;font-size:.88rem}.rentals-page__search:focus{border-color:#e67e22;box-shadow:0 0 0 2px #e67e2233}.rentals-page__search::placeholder{color:#7f8c8d}.rentals-page__count{color:#e67e22;white-space:nowrap;background:#e67e221a;border:1px solid #e67e224d;border-radius:6px;padding:.25rem .75rem;font-size:.95rem;font-weight:700}.rentals-page__export-btn{color:#e67e22;cursor:pointer;white-space:nowrap;background:#fff;border:1px solid #e67e22;border-radius:6px;padding:.35rem .85rem;font-size:.85rem;font-weight:600;transition:background .15s,color .15s}.rentals-page__export-btn:hover:not(:disabled){color:#fff;background:#e67e22}.rentals-page__export-btn:disabled{opacity:.5;cursor:not-allowed}.rentals-page__status{color:#7f8c8d;font-size:.95rem}.rentals-page__table-area--loading{opacity:.5;pointer-events:none}.rentals-page__error{color:#c0392b;background:#fdecea;border:1px solid #f5c6cb;border-radius:6px;padding:.75rem 1rem;font-size:.9rem}.rentals-table-wrapper{background:#fff;border:1px solid #dde1e7;border-radius:8px;overflow-x:auto}.rentals-table{border-collapse:collapse;width:100%;font-size:.9rem}.rentals-table th,.rentals-table td{text-align:left;border-bottom:1px solid #dde1e7;padding:.75rem 1rem}.rentals-table th{color:#2c3e50;text-transform:uppercase;letter-spacing:.07em;background:#f0f2f5;font-size:.8rem;font-weight:600}.rentals-table__th-sortable{cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap}.rentals-table__th-sortable:hover{background:#e1e5eb}.rentals-table__th-sorted{color:#e67e22}.rentals-table__sort-icon{opacity:.5;font-size:.7em}.rentals-table__th-sorted .rentals-table__sort-icon{opacity:1}.rentals-table tbody tr:last-child td{border-bottom:none}.rentals-table tbody tr:hover{background:#fafbfd}.rentals-table__clickable{cursor:pointer}.rentals-table__clickable:hover{background:#f8f9fc!important}.rentals-table__active{background:#fef9f0}.rentals-table__completed{background:#f0fbf4}.rentals-table__empty{text-align:center;color:#7f8c8d;padding:2rem!important}.rentals-table__locker{color:#2c3e50;font-weight:700}.rentals-table__contact{color:#7f8c8d;font-size:.85rem}.active-tag{color:#27ae60;text-transform:uppercase;letter-spacing:.05em;background:#e8f8ef;border-radius:3px;padding:.15rem .5rem;font-size:.75rem;font-weight:700}.rentals-table__outcome{text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;border-radius:3px;padding:.15rem .5rem;font-size:.75rem;font-weight:700;display:inline-block}.rentals-table__outcome--completed{color:#27ae60;background:#bdf4d5}.rentals-table__outcome--canceled{color:#e67e22;background:#fff3e0}.rentals-table__outcome--aborted{color:#fff;background:#3c4ea8}.rentals-table__outcome--capture-failed{color:#c0392b;background:#fdecea}.rentals-pagination{justify-content:center;align-items:center;gap:.5rem;padding:1rem 0 .5rem;display:flex}.rentals-pagination__btn{color:#2c3e50;cursor:pointer;background:#fff;border:1px solid #dde1e7;border-radius:6px;padding:.3rem .7rem;font-size:1rem;line-height:1;transition:background .15s,border-color .15s}.rentals-pagination__btn:hover:not(:disabled){color:#e67e22;background:#ebedf5;border-color:#e67e22}.rentals-pagination__btn:disabled{opacity:.35;cursor:default}.rentals-pagination__info{color:#7f8c8d;text-align:center;min-width:7rem;font-size:.85rem}.statistics-page{flex:1;padding:2rem}.statistics-page__toolbar{flex-wrap:wrap;align-items:center;gap:1rem;margin-bottom:2rem;display:flex}.statistics-page__date-range{align-items:center;gap:.75rem;display:flex}.statistics-page__date-label{color:#7f8c8d;align-items:center;gap:.4rem;font-size:.85rem;font-weight:600;display:flex}.statistics-page__date-input{color:#2c3e50;background:#fff;border:1px solid #dde1e7;border-radius:6px;outline:none;padding:.35rem .6rem;font-size:.88rem}.statistics-page__date-input:focus{border-color:#e67e22;box-shadow:0 0 0 2px #e67e2233}.statistics-page__date-sep{color:#7f8c8d;font-size:.85rem}.statistics-page__export-btn{color:#fff;cursor:pointer;white-space:nowrap;background:#2c3e50;border:1px solid #2c3e50;border-radius:6px;padding:.35rem .9rem;font-size:.85rem;font-weight:600;transition:background .15s,border-color .15s}.statistics-page__export-btn:hover:not(:disabled){background:#1e2a36;border-color:#1e2a36}.statistics-page__export-btn:disabled{opacity:.5;cursor:default}.statistics-page__export-error{color:#c0392b;font-size:.82rem}.statistics-page__status{color:#7f8c8d;font-size:.9rem}.statistics-page__error{color:#c0392b;background:#fdf0ee;border:1px solid #e8b4ae;border-radius:4px;padding:.6rem 1rem;font-size:.9rem;display:inline-block}.statistics-page__cards{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1.5rem;transition:opacity .2s;display:grid}.statistics-page__cards--refreshing{opacity:.55;pointer-events:none}.stat-card{background:#fff;border:1px solid #dde1e7;border-radius:8px;flex-direction:column;gap:.4rem;padding:1.5rem 1.75rem;animation:.35s ease-out backwards card-enter;display:flex;box-shadow:0 2px 8px #00000012}.stat-card:first-child{animation-delay:0s}.stat-card:nth-child(2){animation-delay:70ms}.stat-card:nth-child(3){animation-delay:.14s}.stat-card:nth-child(4){animation-delay:.21s}.stat-card:nth-child(5){animation-delay:.28s}.stat-card:nth-child(6){animation-delay:.35s}.stat-card__label{text-transform:uppercase;letter-spacing:.07em;color:#7f8c8d;font-size:.78rem;font-weight:600}.stat-card__live-badge{text-transform:uppercase;letter-spacing:.06em;color:#27ae60;vertical-align:middle;background:#27ae601a;border:1px solid #27ae604d;border-radius:3px;margin-left:.4rem;padding:.05rem .3rem;font-size:.6rem;font-weight:700;display:inline-block}.stat-card__value{color:#2c3e50;font-size:2rem;font-weight:700;line-height:1.1}.stat-card__value-denom{color:#7f8c8d;font-size:1.1rem;font-weight:400}.stat-card__value--pop{animation:.45s cubic-bezier(.34,1.56,.64,1) value-pop;display:inline-block}.stat-card__sub{color:#7f8c8d;font-size:.78rem}.stat-card__captured{color:#7f8c8d;margin-top:.1rem;font-size:.82rem;font-weight:600}.stat-card__bars{flex-direction:column;gap:.75rem;margin-top:.5rem;display:flex}.stat-card__bar-row{grid-template-columns:6rem 2rem 1fr;align-items:center;gap:.5rem;display:grid}.stat-card__bar-label{color:#7f8c8d;white-space:nowrap;font-size:.8rem}.stat-card__bar-count{color:#2c3e50;text-align:right;font-size:.85rem;font-weight:700}.stat-card__bar-track{background:#eef0f3;border-radius:5px;height:10px;overflow:hidden}.stat-card__bar-fill{border-radius:5px;height:100%;transition:width .4s}.stat-card__bar-fill--self{background:#e67e22}.stat-card__bar-fill--staff{background:#2c3e50}.stat-card__bar-fill--completed{background:#27ae60}.stat-card__bar-fill--aborted{background:#e74c3c}.stat-card__bar-ongoing{align-items:center;gap:4px;display:flex}.stat-card__ongoing-dot{opacity:.35;background:#c5bf53;border-radius:50%;width:6px;height:6px;animation:4.4s ease-in-out infinite dot-pulse;display:inline-block}.stat-card__ongoing-dot:nth-child(2){animation-delay:1.6s}.stat-card__ongoing-dot:nth-child(3){animation-delay:3.2s}@keyframes card-enter{0%{opacity:0;transform:translateY(12px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes value-pop{0%{transform:scale(1)}45%{transform:scale(1.03)}75%{transform:scale(.98)}to{transform:scale(1)}}@keyframes dot-pulse{0%,to{opacity:.05;transform:scale(1)}50%{opacity:.25;transform:scale(1.45)}}.locker-search-multi{position:relative}.locker-search-multi[open] .locker-search-multi__chevron{transform:rotate(180deg)}.locker-search-multi__summary{color:#2c3e50;cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap;background:#fff;border:1px solid #dde1e7;border-radius:6px;align-items:center;gap:.4rem;padding:.32rem .65rem;font-size:.88rem;list-style:none;display:flex}.locker-search-multi__summary::-webkit-details-marker{display:none}.locker-search-multi__summary:hover{background:#f0f2f5}.locker-search-multi__summary:focus-visible{border-color:#e67e22;outline:none;box-shadow:0 0 0 2px #e67e2233}.locker-search-multi__summary--active{color:#e67e22;font-weight:700}.locker-search-multi__chevron{font-size:.72rem;transition:transform .15s}.locker-search-multi__panel{z-index:100;background:#fff;border:1px solid #dde1e7;border-radius:8px;width:260px;padding:.5rem;position:absolute;top:calc(100% + 4px);left:0;box-shadow:0 6px 20px #0000001f}.locker-search-multi__search-row{margin-bottom:.4rem}.locker-search-multi__search{color:#2c3e50;box-sizing:border-box;border:1px solid #dde1e7;border-radius:5px;outline:none;width:100%;padding:.32rem .6rem;font-size:.85rem}.locker-search-multi__search:focus{border-color:#e67e22;box-shadow:0 0 0 2px #e67e2226}.locker-search-multi__search::placeholder{color:#7f8c8d}.locker-search-multi__actions{gap:.4rem;margin-bottom:.35rem;display:flex}.locker-search-multi__action-btn{color:#2c3e50;cursor:pointer;white-space:nowrap;background:#f5f6fa;border:1px solid #dde1e7;border-radius:5px;flex:1;padding:.28rem .5rem;font-size:.78rem}.locker-search-multi__action-btn:hover:not(:disabled){background:#e8eaf0}.locker-search-multi__action-btn:disabled{opacity:.45;cursor:default}.locker-search-multi__action-btn--clear{color:#c0392b;border-color:#e8c5c2}.locker-search-multi__action-btn--clear:hover:not(:disabled){background:#fdf0ef}.locker-search-multi__divider{background:#dde1e7;height:1px;margin:.25rem 0}.locker-search-multi__list{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#ccc transparent;max-height:220px;margin:0;padding:0;list-style:none;overflow-y:auto}.locker-search-multi__empty{color:#7f8c8d;padding:.5rem .75rem;font-size:.85rem}.locker-search-multi__item{color:#2c3e50;cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:4px;align-items:center;gap:.55rem;padding:.35rem .6rem;font-size:.85rem;display:flex}.locker-search-multi__item:hover{background:#f0f2f5}.locker-search-multi__item--checked{color:#bf6516;background:#e67e2212;font-weight:600}.locker-search-multi__checkbox{accent-color:#e67e22;cursor:pointer;flex-shrink:0;width:14px;height:14px}.logs-page{flex:1;padding:2rem}.logs-page__toolbar{flex-wrap:wrap;align-items:center;gap:1rem;margin-bottom:1.25rem;display:flex}.logs-page__toolbar h2{color:#2c3e50;margin:0;font-size:1.25rem}.logs-page__date-time-range{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.logs-page__range-label{color:#7f8c8d;font-size:.85rem;font-weight:600}.logs-page__date-input,.logs-page__time-input{color:#2c3e50;background:#fff;border:1px solid #dde1e7;border-radius:6px;outline:none;padding:.35rem .6rem;font-size:.88rem}.logs-page__date-input:focus,.logs-page__time-input:focus{border-color:#e67e22;box-shadow:0 0 0 2px #e67e2233}.logs-page__time-input{width:7rem}.logs-page__count{color:#7f8c8d;margin-left:auto;font-size:.95rem}.logs-page__error{color:#c0392b;background:#fdf0ef;border:1px solid #f5c6c1;border-radius:6px;margin-bottom:1rem;padding:.6rem 1rem}.logs-page__status{color:#7f8c8d}.logs-page__table-area{overflow:hidden}.logs-page__table-area--loading{opacity:.55;pointer-events:none}.logs-table-wrapper{overflow-x:auto}.logs-table{border-collapse:collapse;width:100%;font-size:.85rem}.logs-table th{text-align:left;color:#7f8c8d;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;background:#f5f6fa;border-bottom:2px solid #dde1e7;padding:.55rem .75rem;font-size:.78rem;font-weight:700;position:sticky;top:0}.logs-table__row:hover td{background:#f8f9fb}.logs-table__row td{vertical-align:top;border-bottom:1px solid #dde1e7;padding:.5rem .75rem}.logs-table__empty{text-align:center;color:#7f8c8d;font-size:.95rem;padding:2.5rem!important}.logs-table__cell--timestamp{white-space:nowrap;color:#7f8c8d;font-size:.82rem}.logs-table__cell--locker{white-space:nowrap;color:#2c3e50;font-weight:600}.logs-table__cell--entity{white-space:nowrap}.logs-table__cell--event{white-space:nowrap;font-family:monospace;font-size:.8rem}.logs-table__cell--actor,.logs-table__cell--state{white-space:nowrap;font-size:.82rem}.logs-table__cell--description{color:#2c3e50;max-width:420px}.logs-table__entity-badge{color:#2980b9;background:#eaf0f6;border-radius:4px;padding:.15rem .45rem;font-size:.75rem;font-weight:600;display:inline-block}.logs-table__data-details{margin-top:.4rem}.logs-table__data-details summary{color:#7f8c8d;cursor:pointer;-webkit-user-select:none;user-select:none;font-size:.75rem}.logs-table__data-pre{white-space:pre-wrap;word-break:break-all;color:#2c3e50;background:#f5f6fa;border:1px solid #dde1e7;border-radius:4px;max-width:400px;margin:.3rem 0 0;padding:.4rem .6rem;font-size:.72rem;overflow-x:auto}.logs-pagination{justify-content:center;align-items:center;gap:.5rem;margin-top:1.25rem;display:flex}.logs-pagination__btn{color:#2c3e50;cursor:pointer;background:#fff;border:1px solid #dde1e7;border-radius:6px;justify-content:center;align-items:center;width:2rem;height:2rem;font-size:1rem;display:flex}.logs-pagination__btn:hover:not(:disabled){background:#f0f2f5;border-color:#bfc7d2}.logs-pagination__btn:disabled{opacity:.35;cursor:default}.logs-pagination__info{color:#7f8c8d;text-align:center;min-width:110px;font-size:.88rem}.pricing-page{flex:1;padding:2rem}.pricing-page__title{color:#2c3e50;margin-bottom:1.5rem;font-size:1.1rem;font-weight:700}.pricing-page__status{color:#7f8c8d;font-size:.9rem}.pricing-page__error{color:#c0392b;background:#fdf0ee;border:1px solid #e8b4ae;border-radius:4px;padding:.6rem 1rem;font-size:.9rem;display:inline-block}.pricing-page__table-wrap{background:#fff;border-radius:8px;overflow-x:auto;box-shadow:0 2px 8px #00000012}.pricing-table{border-collapse:collapse;width:100%;font-size:.875rem}.pricing-table thead tr{color:#fff;text-align:left;background:#2c3e50}.pricing-table th{white-space:nowrap;padding:.65rem 1rem;font-weight:600}.pricing-table tbody tr{border-bottom:1px solid #dde1e7}.pricing-table tbody tr:last-child{border-bottom:none}.pricing-table tbody tr:hover{background:#fcfcfd}.pricing-table tbody tr--inactive{opacity:.5}.pricing-table td{vertical-align:middle;color:#2c3e50;padding:.6rem 1rem}.pricing-table__price-cell{align-items:center;gap:.5rem;display:flex}.pricing-table__price-input{color:#2c3e50;background:#fff;border:1px solid #dde1e7;border-radius:6px;outline:none;width:7rem;padding:.3rem .5rem;font-size:.875rem;transition:border-color .15s,box-shadow .15s}.pricing-table__price-input:focus{border-color:#e67e22;box-shadow:0 0 0 2px #e67e2233}.pricing-table__price-input--dirty{border-color:#e67e22}.pricing-table__save-btn{color:#fff;cursor:pointer;white-space:nowrap;background:#e67e22;border:none;border-radius:6px;padding:.3rem .75rem;font-size:.8rem;font-weight:600;transition:background .15s}.pricing-table__save-btn:hover:not(:disabled){background:#c96a17}.pricing-table__save-btn:disabled{opacity:.5;cursor:default}.pricing-table__save-error{color:#c0392b;font-size:.78rem}.pricing-table__save-ok{color:#27ae60;font-size:.78rem}.pricing-table__currency{color:#7f8c8d;font-size:.78rem}.pricing-table__badge{border-radius:4px;padding:.15rem .5rem;font-size:.75rem;font-weight:600;display:inline-block}.pricing-table__badge--active{color:#27ae60;background:#e8f8ef}.pricing-table__badge--inactive{color:#7f8c8d;background:#f0f0f0}.support-page{background:#f5f6fa;flex-direction:column;flex:1;display:flex}.support-page__hero{background:#fff;border-bottom:3px solid #e67e22;padding:2.5rem 2.5rem 2rem}.support-page__hero-title{color:#2c3e50;letter-spacing:-.01em;margin:0 0 .4rem;font-size:2rem;font-weight:900}.support-page__hero-sub{color:#7f8c8d;margin:0;font-size:.975rem;line-height:1.5}.support-nav{background:#f5f6fa;border-bottom:1px solid #dde1e7;justify-content:center;gap:7rem;padding:2.5rem;display:flex}.support-nav__item{cursor:pointer;background:0 0;border:none;flex-direction:column;align-items:center;gap:.75rem;padding:.5rem .75rem;transition:transform .15s;display:flex;position:relative}.support-nav__item:after{content:"";background:#e67e22;border-radius:2px;width:60%;height:3px;transition:transform .2s;position:absolute;bottom:-.35rem;left:50%;transform:translate(-50%)scaleX(0)}.support-nav__item:hover{transform:translateY(-3px)}.support-nav__item:hover:after{transform:translate(-50%)scaleX(1)}.support-nav__item:hover .support-nav__label{color:#e67e22}.support-nav__icon{width:4.5rem;height:4.5rem}.support-nav__label{color:#2c3e50;text-align:center;letter-spacing:.02em;font-size:1rem;font-weight:700;transition:color .15s}.ref-section{flex-direction:column;gap:.6rem;margin-bottom:1.5rem;display:flex}.ref-section__heading{letter-spacing:.1em;text-transform:uppercase;color:#7f8c8d;margin:0 0 .25rem;font-size:.78rem;font-weight:700}.ref-section__heading--spaced{margin-top:1rem}.support-chapter{padding:2rem 2.5rem 0}.support-chapter__header{border-bottom:2px solid #dde1e7;margin-bottom:1.5rem;padding-bottom:.75rem}.support-chapter__title{color:#2c3e50;margin:0 0 .4rem;font-size:1.05rem;font-weight:700}.support-chapter__intro{color:#7f8c8d;margin:0;font-size:.875rem;line-height:1.6}.support-chapter__grid{grid-template-columns:1fr 1fr;gap:1.5rem 2rem;display:grid}@media (width<=900px){.support-chapter__grid{grid-template-columns:1fr}}.ref-state{background:#fff;border:1px solid #dde1e7;border-radius:8px;padding:.85rem 1rem}.ref-state--free{background:#f6fdf9;border-left:3px solid #a9dfbf}.ref-state--occupied{background:#fffbf4;border-left:3px solid #f8c471}.ref-state--out-of-order{background:#fff8f8;border-left:3px solid #f5c6cb}.ref-state--plain{border-left:3px solid #dde1e7}.ref-state__header{margin-bottom:.5rem}.ref-state__desc{color:#3a4a5c;margin:0;font-size:.875rem;line-height:1.55}.ref-state__cur{color:#e67e22;margin-top:.5rem;font-size:.85rem;display:block}.ref-state__causes{flex-direction:column;gap:.35rem;margin:.6rem 0 0;padding-left:1.25rem;display:flex}.ref-state__causes li{color:#3a4a5c;font-size:.85rem;line-height:1.5}.ref-section--full{grid-column:1/-1}.ref-states-grid{grid-template-columns:1fr 1fr;gap:.6rem;display:grid}@media (width<=700px){.ref-states-grid{grid-template-columns:1fr}}.ref-lock-badge{letter-spacing:.05em;text-transform:uppercase;border-radius:2rem;padding:.2rem .65rem;font-size:.78rem;font-weight:700;display:inline-block}.ref-lock-badge--locked{color:#1a56a0;background:#eaf0fb;border:1px solid #90b4e6}.ref-lock-badge--unlocked{color:#555;background:#f0f0f0;border:1px solid #ccc}.ref-lock-badge--maintenance{color:#d68910;background:#fef9e7;border:1px solid #f8c471}.ref-lock-badge--alarm{color:#c0392b;background:#fdecea;border:1px solid #f5c6cb}.ref-lock-badge--disabled{color:#7f8c8d;background:#f5f5f5;border:1px solid #bdc3c7}.ref-lock-badge--disconnected{color:#555;background:#f0f0f0;border:1px solid #999}.ref-lifecycle-badge{color:#1a56c4;letter-spacing:.01em;background:#e8f0fe;border-radius:4px;padding:.2rem .65rem;font-size:.78rem;font-weight:600;display:inline-block}.ref-lifecycle-badge--transitional{color:#b7660a;background:#fef3e2;border:1px solid #f5c97a}.ref-lifecycle-badge--payment{color:#1a7a42;background:#eafaf1;border:1px solid #a3d9b5}.ref-lifecycle-badge--ended{color:#555;background:#f0f0f0;border:1px solid #ccc}.ref-mode-badge{letter-spacing:.05em;text-transform:uppercase;color:#1a5276;background:#eaf0fb;border:1px solid #aed6f1;border-radius:2rem;padding:.2rem .65rem;font-size:.78rem;font-weight:700;display:inline-block}.ref-mode-badge--self-service{color:#6c3483;background:#f4ecfb;border-color:#d2b4de}.guide-card{background:#fff;border:1px solid #dde1e7;border-radius:8px;transition:box-shadow .15s;overflow:hidden;box-shadow:0 1px 4px #0000000d}.guide-card[open]{box-shadow:0 3px 12px #0000001a}.guide-card--trouble{border-left:3px solid #df7c72}.guide-card__summary{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:.6rem;padding:.75rem 1rem;list-style:none;display:flex}.guide-card__summary::-webkit-details-marker{display:none}.guide-card__summary:hover{background:#f7f8fb}.guide-card__icon-slot{flex-shrink:0;width:1.1rem;height:1.1rem;display:inline-block}.guide-card__title{color:#2c3e50;flex:1;font-size:.9rem;font-weight:600}.guide-card__chevron{color:#7f8c8d;font-size:.75rem;transition:transform .15s}[open]>summary .guide-card__chevron{transform:rotate(180deg)}.guide-card__body{border-top:1px solid #dde1e7;padding:.5rem 1rem 1rem}.guide-card__symptom{color:#7f8c8d;margin:.5rem 0 .75rem;font-size:.85rem;font-style:italic}.guide-card__steps{flex-direction:column;gap:.4rem;margin:.5rem 0 0;padding-left:1.25rem;display:flex}.guide-card__steps li{color:#3a4a5c;font-size:.875rem;line-height:1.5}.guide-card__escalate{color:#c0392b;background:#fff5f5;border:1px solid #f5c6c6;border-radius:5px;margin:.75rem 0 0;padding:.55rem .8rem;font-size:.82rem;font-weight:600}.support-ticket__header{border-bottom:2px solid #dde1e7;align-items:center;gap:.6rem;padding:1.25rem 2.5rem;display:flex}.support-ticket__icon{flex-shrink:0;width:1.5rem;height:1.5rem}.support-ticket__title{color:#2c3e50;margin:0;font-size:1.05rem;font-weight:700}.support-ticket__body{justify-content:center;padding:1.25rem 2.5rem;display:flex}.support-ticket__iframe{background:#fff;border:1px solid #dde1e7;border-radius:8px;width:80%;min-height:650px}.support-faq{flex-direction:column;gap:.5rem;padding:1.5rem 2.5rem 0;display:flex}.support-faq__header{border-bottom:2px solid #dde1e7;align-items:center;gap:.6rem;margin-bottom:.25rem;padding-bottom:.75rem;display:flex}.support-faq__header-icon{flex-shrink:0;width:1.5rem;height:1.5rem}.support-faq__header-title{color:#2c3e50;margin:0;font-size:1.05rem;font-weight:700}.faq-item{background:#fff;border:1px solid #dde1e7;border-radius:8px;overflow:hidden}.faq-item[open]{box-shadow:0 3px 12px #00000012}.faq-item__summary{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:.75rem;padding:1rem 1.25rem;list-style:none;display:flex}.faq-item__summary::-webkit-details-marker{display:none}.faq-item__summary:hover{background:#f7f8fb}.faq-item__icon{flex-shrink:0;width:1.5rem;height:1.5rem}.faq-item__title{color:#2c3e50;flex:1;font-size:1rem;font-weight:700}.faq-item__chevron{color:#7f8c8d;font-size:.75rem;transition:transform .15s}[open]>summary .faq-item__chevron{transform:rotate(180deg)}.faq-item__body{border-top:1px solid #dde1e7;padding:1.25rem 1.5rem 1.5rem}.app-shell{background:#f5f6fa;flex-direction:column;min-height:100vh;display:flex}.app-shell__header{color:#fff;background:#2c3e50;align-items:center;gap:1rem;padding:1rem 2rem;display:flex}.app-shell__title{margin:0;font-size:1.4rem;font-weight:800}.app-shell__title span{color:#e67e22}.app-shell__subtitle{opacity:.65;letter-spacing:.06em;text-transform:uppercase;font-size:.85rem}.app-shell__header-actions{align-items:center;gap:.75rem;margin-left:auto;display:flex}.app-shell__username{opacity:.75;font-size:.85rem}.app-shell__logout-btn{color:#fff;cursor:pointer;background:0 0;border:1px solid #fff6;border-radius:4px;padding:.25rem .75rem;font-size:.8rem}.app-shell__logout-btn:hover{background:#ffffff1a}.app-shell__tabs{background:#fff;border-bottom:2px solid #dde1e7;gap:0;padding:.5rem 1.5rem;display:flex}.app-shell__content{flex-direction:column;flex:1;display:flex}.tab-btn--right{margin-left:auto}.login-page{background:#2c3e50;justify-content:center;align-items:center;min-height:100vh;padding:1rem;display:flex}.login-card{background:#fff;border-radius:.75rem;width:100%;max-width:380px;padding:2.5rem 2rem;box-shadow:0 8px 40px #00000059}.login-card__logo{text-align:center;margin-bottom:.5rem;display:block}.login-card__logo span{color:#fff;letter-spacing:.15em;text-transform:uppercase;background:#e67e22;border-radius:2rem;padding:.25rem .75rem;font-size:.7rem;font-weight:800;display:inline-block}.login-card__title{color:#2c3e50;text-align:center;letter-spacing:-.02em;margin:0 0 .25rem;font-size:1.6rem;font-weight:800}.login-card__subtitle{color:#7f8c8d;text-align:center;margin:0 0 2rem;font-size:.85rem}.login-form{flex-direction:column;gap:1.25rem;display:flex}.login-form__field{flex-direction:column;gap:.4rem;display:flex}.login-form__field label{color:#2c3e50;font-size:.875rem;font-weight:600}.login-form__field input{border:1px solid #d1d5db;border-radius:.4rem;outline:none;padding:.65rem .9rem;font-size:1rem;transition:border-color .15s,box-shadow .15s}.login-form__field input:focus{border-color:#e67e22;box-shadow:0 0 0 3px #e67e222e}.login-form__hint{color:#7f8c8d;font-size:.75rem}.login-form__error{color:#c0392b;margin:0;font-size:.875rem}.login-form__submit{color:#fff;cursor:pointer;background:#e67e22;border:none;border-radius:.4rem;padding:.75rem;font-size:1rem;font-weight:600;transition:background .15s}.login-form__submit:hover:not(:disabled){background:#c96a17}.login-form__submit:disabled{opacity:.6;cursor:not-allowed}.login-alert{text-align:center;background:#fdf2f2;border:1px solid #c0392b;border-radius:.4rem;align-items:flex-start;gap:.6rem;padding:.75rem 1rem;display:flex}.login-alert__icon{color:#c0392b;flex-shrink:0;font-size:1rem;line-height:1.4}.login-alert__message{color:#c0392b;margin:0;font-size:.875rem;line-height:1.4}.login-redirect{flex-direction:column;gap:.75rem;display:flex}.login-redirect__error{color:#c0392b;margin:0;font-size:.875rem}.login-redirect__btn{cursor:pointer;color:#fff;letter-spacing:.02em;background:#e67e22;border:none;border-radius:.4rem;padding:.85rem;font-size:1rem;font-weight:700;transition:background .15s}.login-redirect__btn:hover{background:#c96a17}.login-redirect__btn:active{background:#ad5c14}
