:root{--bg-primary: #0a0a0f;--bg-secondary: #12121a;--bg-card: #1a1a2e;--bg-card-hover: #1f1f35;--bg-sidebar: #0d0d15;--border: #2a2a3e;--text-primary: #e8e8f0;--text-secondary: #8888a0;--text-muted: #555570;--accent: hsl(61, 100%, 63%);--accent-hover: #dde02d;--accent-glow: rgba(205, 255, 68, .3);--green: #00e676;--green-bg: rgba(0, 230, 118, .1);--blue: #448aff;--blue-bg: rgba(68, 138, 255, .1);--orange: #ff9100;--orange-bg: rgba(255, 145, 0, .1);--red: #e6d707;--red-bg: rgba(255, 68, 68, .1);--yellow: #ffd600;--purple: #aa66ff;--sidebar-width: 260px;--topbar-height: 64px;--radius: 12px;--radius-sm: 8px}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Rajdhani,sans-serif;background:var(--bg-primary);color:var(--text-primary);min-height:100vh;overflow-x:hidden}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--bg-secondary)}::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}.auth-screen{min-height:100vh;display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse at center,#1a1a2e,#0a0a0f 70%);padding:20px}.auth-container{width:100%;max-width:420px;text-align:center}.auth-logo{display:flex;align-items:center;justify-content:center;gap:14px;font-family:Orbitron,sans-serif;font-size:42px;font-weight:900;color:var(--accent);text-shadow:0 0 30px var(--accent-glow);margin-bottom:4px}.auth-logo i{font-size:46px;animation:pulse-glow 2s infinite}@keyframes pulse-glow{0%,to{filter:drop-shadow(0 0 5px var(--accent-glow))}50%{filter:drop-shadow(0 0 20px var(--accent-glow))}}.auth-subtitle{font-size:14px;color:var(--text-muted);text-transform:uppercase;letter-spacing:3px;margin-bottom:32px}.auth-form{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:32px;text-align:left}.auth-form h2{font-family:Orbitron,sans-serif;font-size:20px;margin-bottom:24px;text-align:center;color:var(--text-primary)}.auth-switch{text-align:center;margin-top:16px;font-size:14px;color:var(--text-muted)}.auth-switch a{color:var(--accent);text-decoration:none;font-weight:600}.auth-switch a:hover{text-decoration:underline}.form-group{display:flex;flex-direction:column;gap:6px;margin-bottom:16px;flex:1}.form-group label{font-size:13px;color:var(--text-muted);text-transform:uppercase;letter-spacing:1px;font-weight:600}.form-group label i{margin-right:6px;color:var(--accent)}.form-group input,.form-group select,.form-group textarea{padding:12px 16px;background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-primary);font-family:Rajdhani,sans-serif;font-size:15px;outline:none;transition:border-color .2s;width:100%}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--accent)}.form-group textarea{resize:vertical}.form-row{display:flex;gap:16px}.sale-total{font-family:Orbitron,sans-serif;font-size:28px;font-weight:700;color:var(--green);padding:8px 0}.btn{padding:10px 20px;border-radius:var(--radius-sm);border:none;cursor:pointer;font-family:Rajdhani,sans-serif;font-size:15px;font-weight:600;display:inline-flex;align-items:center;gap:8px;transition:all .2s;white-space:nowrap}.btn-primary{background:var(--accent);color:#0a0a0f}.btn-primary:hover{background:var(--accent-hover);box-shadow:0 4px 15px var(--accent-glow)}.btn-primary:disabled{opacity:.4;cursor:not-allowed;box-shadow:none}.btn-outline{background:transparent;border:1px solid var(--border);color:var(--text-secondary)}.btn-outline:hover{border-color:var(--accent);color:var(--text-primary)}.btn-danger{background:transparent;border:1px solid var(--red);color:var(--red)}.btn-danger:hover{background:var(--red-bg)}.btn-success{background:var(--green);color:#0a0a0f}.btn-success:hover{box-shadow:0 4px 15px #00e6764d}.btn-sm{padding:6px 12px;font-size:13px}.btn-full{width:100%;justify-content:center;padding:14px;font-size:16px}.app{display:flex;min-height:100vh}.sidebar{position:fixed;left:0;top:0;bottom:0;width:var(--sidebar-width);background:var(--bg-sidebar);border-right:1px solid var(--border);display:flex;flex-direction:column;z-index:100;transition:transform .3s ease}.sidebar-header{padding:24px 20px;border-bottom:1px solid var(--border);text-align:center}.logo{display:flex;align-items:center;justify-content:center;gap:12px;font-family:Orbitron,sans-serif;font-size:28px;font-weight:900;color:var(--accent);text-shadow:0 0 20px var(--accent-glow)}.logo i{font-size:32px}.logo-subtitle{font-size:12px;color:var(--text-muted);text-transform:uppercase;letter-spacing:3px;margin-top:4px}.nav-menu{list-style:none;padding:12px 0;flex:1;overflow-y:auto}.nav-item{display:flex;align-items:center;gap:14px;padding:14px 24px;cursor:pointer;color:var(--text-secondary);font-size:16px;font-weight:500;transition:all .2s ease;border-left:3px solid transparent;-webkit-user-select:none;user-select:none}.nav-item:hover{color:var(--text-primary);background:#ff44440d}.nav-item.active{color:var(--accent);background:#ff444414;border-left-color:var(--accent)}.nav-item i{width:22px;text-align:center;font-size:18px}.sidebar-footer{padding:16px 20px;border-top:1px solid var(--border)}.user-info{display:flex;align-items:center;gap:12px;margin-bottom:12px}.user-avatar{width:40px;height:40px;border-radius:50%;background:var(--red-bg);display:flex;align-items:center;justify-content:center;color:var(--accent);font-size:18px;font-weight:700;border:2px solid var(--accent);flex-shrink:0}.user-details{display:flex;flex-direction:column}.user-name{font-weight:600;font-size:15px}.user-role{font-size:12px;color:var(--accent);text-transform:uppercase;letter-spacing:1px}.btn-logout{width:100%;padding:8px;background:transparent;border:1px solid var(--border);color:var(--text-muted);border-radius:var(--radius-sm);cursor:pointer;font-family:Rajdhani,sans-serif;font-size:13px;transition:all .2s;display:flex;align-items:center;justify-content:center;gap:6px}.btn-logout:hover{border-color:var(--red);color:var(--red)}.main-content{margin-left:var(--sidebar-width);flex:1;min-height:100vh}.topbar{height:var(--topbar-height);background:var(--bg-secondary);border-bottom:1px solid var(--border);display:flex;align-items:center;padding:0 24px;gap:20px;position:sticky;top:0;z-index:50}.menu-toggle{display:none;background:none;border:none;color:var(--text-primary);font-size:20px;cursor:pointer}.topbar h1{font-family:Orbitron,sans-serif;font-size:20px;font-weight:700;letter-spacing:1px}.topbar-actions{margin-left:auto;display:flex;align-items:center;gap:12px}.topbar-user{display:flex;align-items:center;gap:10px;font-size:14px;color:var(--text-secondary)}.role-badge{padding:4px 12px;border-radius:20px;font-size:11px;font-weight:700;letter-spacing:1px}.role-badge.patron{background:var(--red-bg);color:var(--accent)}.role-badge.manager{background:var(--orange-bg);color:var(--orange)}.role-badge.vendeur{background:var(--blue-bg);color:var(--blue)}.role-badge.staff{background:#aa66ff26;color:var(--purple)}.page{padding:24px;animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px;margin-bottom:24px}.stat-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:20px;display:flex;align-items:center;gap:16px;transition:all .3s ease}.stat-card:hover{border-color:var(--accent);box-shadow:0 0 20px #ff44441a;transform:translateY(-2px)}.stat-icon{width:52px;height:52px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;font-size:22px;flex-shrink:0}.stat-icon.green{background:var(--green-bg);color:var(--green)}.stat-icon.blue{background:var(--blue-bg);color:var(--blue)}.stat-icon.orange{background:var(--orange-bg);color:var(--orange)}.stat-icon.red{background:var(--red-bg);color:var(--red)}.stat-info h3{font-size:13px;color:var(--text-secondary);font-weight:500;margin-bottom:4px}.stat-value{font-family:Orbitron,sans-serif;font-size:24px;font-weight:700}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.card-header{padding:16px 20px;border-bottom:1px solid var(--border)}.card-header h2{font-size:16px;font-weight:600;display:flex;align-items:center;gap:10px}.card-header h2 i{color:var(--accent)}.card-body{padding:20px}.table-responsive{overflow-x:auto}.data-table{width:100%;border-collapse:collapse}.data-table th{text-align:left;padding:12px 14px;font-size:11px;text-transform:uppercase;letter-spacing:1px;color:var(--text-muted);font-weight:600;border-bottom:1px solid var(--border);white-space:nowrap}.data-table td{padding:12px 14px;font-size:14px;border-bottom:1px solid rgba(42,42,62,.5);color:var(--text-secondary)}.data-table tr:hover td{background:#ff444408;color:var(--text-primary)}.data-table .serial{font-family:Courier New,monospace;color:var(--orange);font-size:13px;font-weight:600}.data-table .price{color:var(--green);font-weight:600}.toolbar{display:flex;gap:12px;margin-bottom:20px;flex-wrap:wrap;align-items:center}.toolbar input,.toolbar select{padding:10px 16px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-primary);font-family:Rajdhani,sans-serif;font-size:14px;outline:none}.toolbar input{flex:1;min-width:200px}.toolbar input:focus,.toolbar select:focus{border-color:var(--accent)}.empty-state{text-align:center;padding:60px 20px;color:var(--text-muted)}.empty-state i{font-size:48px;margin-bottom:16px;display:block}.empty-state p{font-size:16px}.catalogue-filters{display:flex;gap:8px;margin-bottom:24px;flex-wrap:wrap}.filter-btn{padding:8px 18px;border:1px solid var(--border);background:var(--bg-card);color:var(--text-secondary);border-radius:20px;cursor:pointer;font-family:Rajdhani,sans-serif;font-size:14px;font-weight:600;transition:all .2s}.filter-btn:hover{border-color:var(--accent);color:var(--text-primary)}.filter-btn.active{background:var(--accent);border-color:var(--accent);color:#0a0a0f}.catalogue-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:20px}.weapon-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:20px;transition:all .3s ease}.weapon-card:hover{border-color:var(--accent);box-shadow:0 4px 24px #ff44441a;transform:translateY(-3px)}.weapon-card-top{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:8px}.weapon-name{font-size:17px;font-weight:700}.weapon-badge{padding:3px 10px;border-radius:10px;font-size:11px;font-weight:700;text-transform:uppercase}.badge-pistolet{background:var(--blue-bg);color:var(--blue)}.badge-smg{background:var(--orange-bg);color:var(--orange)}.badge-fusil{background:var(--red-bg);color:var(--red)}.badge-fusil-pompe{background:#aa66ff26;color:var(--purple)}.badge-sniper{background:#ffd60026;color:var(--yellow)}.weapon-desc{font-size:13px;color:var(--text-muted);margin-bottom:12px}.weapon-price{font-family:Orbitron,sans-serif;font-weight:700;color:var(--green);font-size:20px}.weapon-price-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.edit-price-btn{opacity:.5;transition:opacity .2s;flex-shrink:0}.weapon-card:hover .edit-price-btn{opacity:1}.weapon-calibre{font-size:12px;font-weight:700;color:var(--orange);letter-spacing:1px;margin-bottom:6px;display:flex;align-items:center;gap:6px}.weapon-calibre i{font-size:10px;opacity:.7}.weapon-price-range{display:flex;align-items:center;gap:6px;margin-top:6px;font-size:12px;color:var(--text-muted);flex-wrap:wrap}.weapon-price-range i{color:var(--accent);font-size:10px}.weapon-price-range .range-sep{opacity:.5}.add-article-section{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-sm);padding:16px;margin-bottom:20px}.add-article-title{font-size:13px;text-transform:uppercase;letter-spacing:1px;color:var(--accent);font-weight:700;margin-bottom:14px;display:flex;align-items:center;gap:8px}.sale-cart-section{border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden;margin-bottom:20px}.sale-cart-header{display:flex;justify-content:space-between;align-items:center;padding:10px 16px;background:var(--bg-secondary);border-bottom:1px solid var(--border);font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:var(--text-secondary)}.sale-cart-header i{color:var(--accent)}.cart-grand-total{font-family:Orbitron,sans-serif;color:var(--green);font-size:14px}.cart-empty{padding:28px;text-align:center;color:var(--text-muted);font-size:14px;display:flex;align-items:center;justify-content:center;gap:10px}.cart-item{display:flex;align-items:center;gap:12px;padding:12px 16px;border-bottom:1px solid rgba(42,42,62,.5);flex-wrap:wrap;transition:background .2s}.cart-item:last-child{border-bottom:none}.cart-item:hover{background:#ffffff05}.cart-item-info{flex:1;min-width:120px}.cart-item-name{display:block;font-weight:700;font-size:15px;color:var(--text-primary)}.cart-item-meta{display:block;font-size:12px;color:var(--text-muted);margin-top:2px}.cart-item-serial{display:flex;align-items:center;gap:6px;flex:1;min-width:160px}.cart-serial-input{padding:7px 10px;background:var(--bg-secondary);border:1px solid var(--border);border-radius:6px;color:var(--orange);font-family:Courier New,monospace;font-size:12px;font-weight:600;width:100%;outline:none;transition:border-color .2s}.cart-serial-input:focus{border-color:var(--accent)}.cart-item-total{font-family:Orbitron,sans-serif;font-size:14px;font-weight:700;color:var(--green);min-width:80px;text-align:right}.employes-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px}.employe-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:20px;transition:all .3s ease}.employe-card:hover{border-color:var(--accent)}.employe-top{display:flex;align-items:center;gap:14px;margin-bottom:16px}.employe-avatar{width:50px;height:50px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:700;flex-shrink:0}.employe-avatar.patron{background:var(--red-bg);color:var(--accent);border:2px solid var(--accent)}.employe-avatar.manager{background:var(--orange-bg);color:var(--orange);border:2px solid var(--orange)}.employe-avatar.vendeur{background:var(--blue-bg);color:var(--blue);border:2px solid var(--blue)}.employe-avatar.staff{background:#aa66ff26;color:var(--purple);border:2px solid var(--purple)}.employe-name{font-size:18px;font-weight:700}.employe-grade{font-size:12px;text-transform:uppercase;letter-spacing:1px;font-weight:700}.employe-stats{display:grid;grid-template-columns:1fr 1fr;gap:10px}.employe-stat{text-align:center;padding:10px;background:var(--bg-secondary);border-radius:var(--radius-sm)}.employe-stat-value{font-family:Orbitron,sans-serif;font-weight:700;font-size:18px}.employe-stat-label{font-size:11px;color:var(--text-muted);text-transform:uppercase}.role-select{padding:6px 12px;background:var(--bg-secondary);border:1px solid var(--border);border-radius:6px;color:var(--text-primary);font-family:Rajdhani,sans-serif;font-size:14px;cursor:pointer;outline:none}.role-select:focus{border-color:var(--accent)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;display:none;align-items:center;justify-content:center;z-index:200;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-overlay.active{display:flex}.modal{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);width:90%;max-width:500px;max-height:80vh;overflow-y:auto;animation:modalIn .3s ease}@keyframes modalIn{0%{opacity:0;transform:scale(.95) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--border)}.modal-header h2{font-family:Orbitron,sans-serif;font-size:16px}.modal-close{background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:18px}.modal-close:hover{color:var(--accent)}.modal-body{padding:20px}.toast-container{position:fixed;bottom:24px;right:24px;z-index:300;display:flex;flex-direction:column;gap:8px}.toast{padding:14px 20px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-primary);font-size:14px;display:flex;align-items:center;gap:10px;animation:slideInRight .3s ease;box-shadow:0 8px 32px #0000004d;min-width:280px;border-left:3px solid var(--accent);transition:opacity .3s ease,transform .3s ease}.toast.fading{opacity:0;transform:translate(50px)}.toast.success{border-left-color:var(--green)}.toast.error{border-left-color:var(--red)}.toast.warning{border-left-color:var(--orange)}.toast.info{border-left-color:var(--blue)}@keyframes slideInRight{0%{opacity:0;transform:translate(50px)}to{opacity:1;transform:translate(0)}}.blanch-banner{display:flex;align-items:center;justify-content:center;gap:16px;padding:10px 20px;margin-bottom:24px;background:repeating-linear-gradient(-45deg,rgba(230,215,7,.08),rgba(230,215,7,.08) 10px,transparent 10px,transparent 20px);border:1px solid rgba(230,215,7,.3);border-radius:var(--radius-sm);color:var(--accent);font-family:Orbitron,sans-serif;font-size:12px;font-weight:700;letter-spacing:3px;text-transform:uppercase;animation:pulse-border 2.5s ease-in-out infinite}@keyframes pulse-border{0%,to{border-color:#e6d7074d}50%{border-color:#e6d707cc;box-shadow:0 0 16px #e6d70733}}.blanch-progress-block{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-sm);padding:16px 20px;margin-bottom:24px}.blanch-progress-label{display:flex;justify-content:space-between;font-size:13px;font-weight:600;color:var(--text-secondary);margin-bottom:10px;text-transform:uppercase;letter-spacing:1px}.blanch-progress-bar{height:10px;background:var(--bg-secondary);border-radius:20px;overflow:hidden}.blanch-progress-fill{height:100%;background:linear-gradient(90deg,var(--blue),var(--purple),var(--accent));border-radius:20px;transition:width .8s cubic-bezier(.4,0,.2,1);box-shadow:0 0 10px #a6f6}.blanch-layout{display:grid;grid-template-columns:1fr 320px;gap:20px;margin-bottom:0}.blanch-palier{display:flex;align-items:center;gap:14px;padding:12px 16px;border-radius:var(--radius-sm);border:1px solid;background:var(--bg-secondary);transition:all .2s}.blanch-palier:hover{transform:translate(4px)}.blanch-method-badge{display:inline-block;padding:2px 10px;border-radius:20px;font-size:11px;font-weight:700;background:#aa66ff1f;color:var(--purple);border:1px solid rgba(170,102,255,.3);white-space:nowrap}.blanch-calc-card{margin-bottom:0}.blanch-calc-top{display:flex;gap:24px;align-items:flex-end;flex-wrap:wrap;margin-bottom:20px}.blanch-slider-group{flex:1.2;min-width:220px;display:flex;flex-direction:column;gap:6px}.blanch-slider-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.blanch-slider-header label{font-size:13px;color:var(--text-muted);text-transform:uppercase;letter-spacing:1px;font-weight:600}.blanch-pct-badge{padding:3px 12px;border-radius:20px;font-family:Orbitron,sans-serif;font-size:14px;font-weight:700;border:1px solid;transition:all .3s}.blanch-slider{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:8px;border-radius:20px;background:var(--bg-secondary);outline:none;cursor:pointer;position:relative}.blanch-slider::-webkit-slider-thumb{-webkit-appearance:none;width:22px;height:22px;border-radius:50%;background:var(--slider-color, var(--accent));cursor:pointer;border:3px solid var(--bg-primary);box-shadow:0 0 10px var(--slider-color, var(--accent));transition:box-shadow .2s,background .3s}.blanch-slider::-moz-range-thumb{width:22px;height:22px;border-radius:50%;background:var(--slider-color, var(--accent));cursor:pointer;border:3px solid var(--bg-primary);box-shadow:0 0 10px var(--slider-color, var(--accent))}.blanch-slider-ticks{display:flex;justify-content:space-between;font-size:11px;color:var(--text-muted);padding:0 4px}.blanch-presets{display:flex;gap:6px;margin-top:10px;flex-wrap:wrap}.blanch-preset-btn{padding:4px 10px;border-radius:20px;border:1px solid var(--border);background:var(--bg-secondary);color:var(--text-secondary);font-family:Rajdhani,sans-serif;font-size:12px;font-weight:700;cursor:pointer;transition:all .2s;letter-spacing:.5px}.blanch-preset-btn:hover{border-color:var(--accent);color:var(--accent)}.blanch-preset-btn.active{background:var(--accent);border-color:var(--accent);color:#0a0a0f}.blanch-result-row{display:flex;gap:16px;align-items:center;margin-bottom:16px}.blanch-result-box{flex:1;background:var(--bg-secondary);border-radius:var(--radius);padding:20px 24px;border:1px solid var(--border);text-align:center;transition:all .3s}.blanch-result-box:hover{transform:translateY(-2px)}.blanch-result-give{border-color:#e6d70733}.blanch-result-keep{border-color:#00e67633}.blanch-result-label{font-size:12px;text-transform:uppercase;letter-spacing:1px;color:var(--text-muted);font-weight:700;margin-bottom:8px;display:flex;align-items:center;justify-content:center;gap:6px}.blanch-result-pct{opacity:.6;font-size:11px}.blanch-result-amount{font-family:Orbitron,sans-serif;font-size:28px;font-weight:700;transition:all .3s}.blanch-result-sub{font-size:11px;color:var(--text-muted);margin-top:4px}.blanch-result-divider{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:36px}.blanch-split-bar{display:flex;height:12px;border-radius:20px;overflow:hidden;gap:2px}.blanch-split-give,.blanch-split-keep{height:100%;border-radius:20px;transition:width .4s cubic-bezier(.4,0,.2,1);opacity:.85}.rentals-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px}.rental-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;transition:all .3s ease;display:flex;flex-direction:column;position:relative}.rental-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--accent),transparent);opacity:0;transition:opacity .3s}.rental-card:hover:before{opacity:1}.rental-card:hover{border-color:var(--accent);box-shadow:0 8px 32px #cdff4414;transform:translateY(-3px)}.rental-card.rental-expired{border-color:#f446;opacity:.75}.rental-card.rental-expired:before{background:linear-gradient(90deg,#ff4444,transparent);opacity:1}.rental-card.rental-penthouse{border-color:#ffd6004d}.rental-card.rental-penthouse:before{background:linear-gradient(90deg,var(--yellow),transparent);opacity:.7}.rental-card.rental-penthouse:hover{border-color:var(--yellow);box-shadow:0 8px 32px #ffd6001f}.rental-card-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:var(--bg-secondary);border-bottom:1px solid var(--border)}.rental-room-badge{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:var(--accent)}.rental-card.rental-penthouse .rental-room-badge{color:var(--yellow)}.rental-card.rental-expired .rental-room-badge{color:var(--text-muted)}.rental-room-badge i{font-size:14px}.rental-room-number{font-family:Orbitron,sans-serif;font-size:13px;font-weight:700;color:var(--text-primary);background:#ffffff0d;padding:4px 10px;border-radius:6px;border:1px solid var(--border)}.rental-card-body{padding:14px 16px;flex:1;display:flex;flex-direction:column;gap:10px}.rental-info-row{display:flex;gap:12px;flex-wrap:wrap}.rental-info-item{flex:1;min-width:120px;display:flex;flex-direction:column;gap:2px}.rental-info-label{font-size:11px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.8px;font-weight:600;display:flex;align-items:center;gap:5px}.rental-info-label i{color:var(--accent);font-size:10px}.rental-info-value{font-size:15px;font-weight:600;color:var(--text-primary)}.rental-price-value{font-family:Orbitron,sans-serif;font-size:16px!important;font-weight:700!important;color:var(--green)!important;text-shadow:0 0 8px rgba(0,230,118,.3)}.rental-notes{display:flex;align-items:flex-start;gap:8px;padding:8px 12px;background:#ffffff08;border-radius:6px;border:1px solid rgba(255,255,255,.05)}.rental-notes i{color:var(--yellow);font-size:12px;margin-top:2px;flex-shrink:0}.rental-notes span{font-size:13px;color:var(--text-secondary);font-style:italic;line-height:1.4}.rental-progress-wrap{display:flex;align-items:center;gap:10px;margin-top:4px}.rental-progress-bar{flex:1;height:4px;background:#ffffff12;border-radius:2px;overflow:hidden}.rental-progress-fill{height:100%;border-radius:2px;transition:width 1s linear;box-shadow:0 0 6px currentColor}.rental-progress-label{font-size:11px;font-weight:700;white-space:nowrap;min-width:70px;text-align:right}.rental-card-footer{display:flex;justify-content:space-between;align-items:center;padding:10px 16px;border-top:1px solid var(--border);background:#00000026}.rental-timer{display:flex;align-items:center;gap:6px;font-family:Orbitron,sans-serif;font-size:13px;font-weight:700;color:var(--accent)}.rental-timer.expired{color:#f44;animation:pulse-timer 1.5s infinite}@keyframes pulse-timer{0%,to{opacity:1}50%{opacity:.5}}.rental-duration-preview{font-size:13px;color:var(--text-muted);margin-top:8px;display:flex;align-items:center;gap:6px}.rental-duration-preview i{color:var(--accent);font-size:12px}.rental-duration-preview strong{color:var(--accent)}.locations-layout{display:grid;grid-template-columns:380px 1fr;gap:24px;align-items:start}.locations-form-card{position:sticky;top:calc(var(--topbar-height) + 16px)}.locations-list-col{min-width:0}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000bf;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:200;display:flex;align-items:center;justify-content:center;padding:20px;animation:fadeIn .2s ease}.modal-box{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);width:100%;max-width:480px;box-shadow:0 24px 80px #0009;animation:slideUp .25s ease}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid var(--border)}.modal-header h3{font-size:16px;font-weight:700;display:flex;align-items:center;gap:10px;color:var(--text-primary)}.modal-header h3 i{color:var(--accent)}.modal-close{background:none;border:none;color:var(--text-muted);font-size:18px;cursor:pointer;padding:4px 8px;border-radius:6px;transition:all .2s}.modal-close:hover{color:var(--text-primary);background:#ffffff12}.modal-body{padding:20px;display:flex;flex-direction:column;gap:16px}.modal-rental-info{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-sm);padding:14px 16px;display:flex;flex-direction:column;gap:6px;font-size:14px;color:var(--text-secondary)}.modal-rental-info i{color:var(--accent);width:16px;margin-right:6px}.modal-rental-info strong{color:var(--text-primary)}.modal-current-end{font-size:13px;color:var(--text-muted);margin-top:4px}.modal-current-end span{color:var(--orange);font-weight:600}.modal-new-end{background:#cdff440f;border:1px solid rgba(205,255,68,.2);border-radius:var(--radius-sm);padding:10px 14px;font-size:13px;color:var(--text-secondary);display:flex;align-items:center;gap:8px}.modal-new-end i{color:var(--accent)}.modal-new-end strong{color:var(--accent);font-size:14px}.modal-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:4px}.gc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px}.gc-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:20px;display:flex;flex-direction:column;gap:14px;transition:all .3s ease;position:relative}.gc-card:hover{border-color:var(--accent);box-shadow:0 4px 24px #cdff4414;transform:translateY(-2px)}.gc-card-me{border-color:#cdff444d}.gc-card-top{display:flex;gap:14px;align-items:flex-start}.gc-avatar{width:52px;height:52px;border-radius:50%;border:2px solid;display:flex;align-items:center;justify-content:center;font-size:22px;font-weight:700;flex-shrink:0;position:relative}.gc-me-dot{position:absolute;bottom:2px;right:0;width:12px;height:12px;background:var(--accent);border-radius:50%;border:2px solid var(--bg-card)}.gc-card-identity{display:flex;flex-direction:column;gap:3px;flex:1;min-width:0}.gc-name{font-size:17px;font-weight:700;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gc-username,.gc-joined{font-size:12px;color:var(--text-muted)}.gc-role-row{display:flex;align-items:center}.fiche-role-badge{display:inline-flex;align-items:center;padding:4px 12px;border-radius:20px;font-size:12px;font-weight:700;letter-spacing:.5px}.gc-stats{display:flex;align-items:center;background:var(--bg-secondary);border-radius:var(--radius-sm);padding:12px 16px;gap:8px}.gc-stat{flex:1;display:flex;flex-direction:column;align-items:center;gap:2px}.gc-stat-val{font-family:Orbitron,sans-serif;font-size:16px;font-weight:700}.gc-stat-label{font-size:11px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px}.gc-stat-sep{width:1px;height:32px;background:var(--border)}.gc-actions{display:flex;gap:8px;align-items:center}.gc-role-select{flex:1;padding:7px 10px;background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-primary);font-family:Rajdhani,sans-serif;font-size:13px;outline:none;cursor:pointer;transition:border-color .2s}.gc-role-select:hover,.gc-role-select:focus{border-color:var(--accent)}.fiche-hero{display:flex;gap:24px;align-items:center;background:linear-gradient(135deg,var(--bg-card) 0%,rgba(26,26,46,.6) 100%);border:1px solid var(--border);border-radius:var(--radius);padding:28px 32px;margin-bottom:24px;flex-wrap:wrap;position:relative;overflow:hidden}.fiche-hero:before{content:"";position:absolute;top:-40px;right:-40px;width:200px;height:200px;background:radial-gradient(circle,rgba(205,255,68,.06) 0%,transparent 70%);pointer-events:none}.fiche-avatar-wrap{position:relative;flex-shrink:0}.fiche-avatar{width:80px;height:80px;border-radius:50%;background:#cdff441f;border:3px solid var(--accent);box-shadow:0 0 24px #cdff4433;display:flex;align-items:center;justify-content:center;font-size:34px;font-weight:700;color:var(--accent);font-family:Orbitron,sans-serif}.fiche-me-badge{position:absolute;bottom:-4px;right:-4px;background:var(--accent);color:#000;font-size:9px;font-weight:800;padding:2px 6px;border-radius:10px;letter-spacing:1px}.fiche-info{flex:1;min-width:200px;display:flex;flex-direction:column;gap:6px}.fiche-name{font-family:Orbitron,sans-serif;font-size:26px;font-weight:700;color:var(--text-primary);margin:0}.fiche-username,.fiche-date{font-size:13px;color:var(--text-muted);display:flex;align-items:center;gap:6px}.fiche-username i,.fiche-date i{color:var(--accent);opacity:.7}.fiche-hero-stat{display:flex;flex-direction:column;align-items:flex-end;gap:4px;margin-left:auto}.fiche-hero-val{font-family:Orbitron,sans-serif;font-size:28px;font-weight:700;color:var(--green);text-shadow:0 0 20px rgba(0,230,118,.3)}.fiche-hero-label{font-size:12px;color:var(--text-muted);text-transform:uppercase;letter-spacing:1px}.fiche-barchart{display:flex;align-items:flex-end;gap:12px;height:140px;padding:0 4px}.fiche-bar-col{flex:1;display:flex;flex-direction:column;align-items:center;gap:6px;height:100%}.fiche-bar-value{font-size:9px;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:100%;text-align:center}.fiche-bar-track{flex:1;width:100%;background:var(--bg-secondary);border-radius:4px 4px 0 0;display:flex;align-items:flex-end;overflow:hidden}.fiche-bar-fill{width:100%;background:linear-gradient(180deg,var(--accent) 0%,rgba(205,255,68,.4) 100%);border-radius:4px 4px 0 0;transition:height .6s ease;min-height:2px}.fiche-bar-label{font-size:11px;color:var(--text-muted);font-weight:600;text-transform:uppercase}.fiche-highlight{display:flex;align-items:center;gap:14px;padding:12px;background:var(--bg-secondary);border-radius:var(--radius-sm)}.fiche-highlight-icon{width:40px;height:40px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;font-size:18px;flex-shrink:0}.fiche-highlight-label{font-size:11px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:3px}.fiche-highlight-val{font-size:15px;font-weight:700;color:var(--text-primary)}.fiche-cat-badge{display:inline-block;padding:2px 8px;border-radius:10px;font-size:11px;font-weight:700;background:var(--blue-bg);color:var(--blue);text-transform:capitalize}.sidebar-profile-btn{cursor:pointer;padding:8px;border-radius:var(--radius-sm);transition:all .2s;position:relative}.sidebar-profile-btn:hover{background:#ffffff0d}.sidebar-edit-icon{position:absolute;right:12px;top:50%;transform:translateY(-50%);opacity:0;color:var(--accent);transition:all .2s}.sidebar-profile-btn:hover .sidebar-edit-icon{opacity:1}.profil-modal{max-width:500px!important;padding:0!important;overflow:hidden}.profil-modal-header{background:linear-gradient(135deg,var(--bg-card) 0%,rgba(26,26,46,.6) 100%);padding:24px;display:flex;align-items:center;gap:16px;border-bottom:1px solid var(--border)}.profil-modal-avatar{width:64px;height:64px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:28px;font-weight:700;font-family:Orbitron,sans-serif;border:2px solid;flex-shrink:0}.profil-modal-name{font-family:Orbitron,sans-serif;font-size:20px;font-weight:700;color:var(--text-primary);margin-bottom:4px}.profil-modal-username{font-size:13px;color:var(--text-muted);display:flex;align-items:center;gap:8px}.profil-modal-role{font-size:10px;padding:2px 8px;border-radius:12px;font-weight:700;letter-spacing:.5px;text-transform:uppercase}.profil-tabs{display:flex;background:var(--bg-secondary);border-bottom:1px solid var(--border)}.profil-tab{flex:1;padding:16px;background:transparent;border:none;border-bottom:2px solid transparent;color:var(--text-muted);font-family:Rajdhani,sans-serif;font-size:15px;font-weight:600;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;gap:8px}.profil-tab:hover{color:var(--text-primary)}.profil-tab.active{color:var(--accent);border-bottom-color:var(--accent);background:#cdff440d}.profil-info-banner{padding:12px 16px;background:#448aff0f;border:1px dashed rgba(68,138,255,.3);border-radius:var(--radius-sm);color:var(--text-secondary);font-size:13px;margin-bottom:20px;display:flex;align-items:flex-start;gap:12px}.profil-info-banner i{color:var(--blue);font-size:16px;margin-top:2px}.profil-info-banner strong{color:var(--text-primary)}@media(max-width:1200px){.locations-layout{grid-template-columns:1fr}.locations-form-card{position:static}}@media(max-width:900px){.fiche-hero{padding:20px}.fiche-hero-stat{margin-left:0;align-items:flex-start}}@media(max-width:768px){.sidebar{transform:translate(-100%)}.sidebar.open{transform:translate(0)}.main-content{margin-left:0}.menu-toggle{display:block}.form-row{flex-direction:column;gap:0}.stats-grid{grid-template-columns:1fr 1fr}.rentals-grid{grid-template-columns:1fr}.rental-card-footer{flex-wrap:wrap;gap:8px}.gc-grid{grid-template-columns:1fr}}@media(max-width:480px){.stats-grid,.catalogue-grid{grid-template-columns:1fr}.fiche-name{font-size:20px}}.badge{display:inline-flex;align-items:center;gap:5px;padding:3px 10px;border-radius:20px;font-size:11px;font-weight:700;letter-spacing:.5px;white-space:nowrap}.badge-active-loc{background:#cdff441f;color:var(--accent);border:1px solid rgba(205,255,68,.3)}.badge-active-loc i{font-size:7px;animation:pulse-dot 1.5s infinite}@keyframes pulse-dot{0%,to{opacity:1}50%{opacity:.3}}.badge-expired-loc{background:#ff44441f;color:#ff6b6b;border:1px solid rgba(255,68,68,.3)}.badge-checkout{background:#00e6761f;color:var(--green);border:1px solid rgba(0,230,118,.3)}.row-checkout td{opacity:.75}.row-expired-loc td{opacity:.85}.facture-modal{max-width:640px!important;max-height:90vh;overflow-y:auto}.facture-body{gap:0!important;padding:0!important}.facture-header-band{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;background:linear-gradient(135deg,#12121a,#1a1a2e);flex-wrap:wrap;gap:12px}.facture-logo-zone{display:flex;align-items:center;gap:14px}.facture-meta{display:flex;flex-direction:column;align-items:flex-end;gap:4px}.facture-num{font-family:Orbitron,sans-serif;font-size:18px;font-weight:700;color:var(--accent);letter-spacing:2px}.facture-date-emis{font-size:12px;color:var(--text-muted)}.facture-status-badge{padding:3px 12px;border-radius:20px;font-size:11px;font-weight:700;letter-spacing:.5px}.facture-status-badge.status-active{background:#cdff441f;color:var(--accent);border:1px solid rgba(205,255,68,.3)}.facture-status-badge.status-done{background:#00e6761f;color:var(--green);border:1px solid rgba(0,230,118,.3)}.facture-status-badge.status-expired{background:#ff44441f;color:#ff6b6b;border:1px solid rgba(255,68,68,.3)}.facture-divider{height:1px;background:var(--border);margin:0}.facture-two-cols{display:grid;grid-template-columns:1fr 1fr}.facture-two-cols .facture-section:first-child{border-right:1px solid var(--border)}.facture-section{padding:16px 24px;display:flex;flex-direction:column;gap:8px}.facture-section-title{font-size:11px;text-transform:uppercase;letter-spacing:1.5px;color:var(--text-muted);font-weight:700;display:flex;align-items:center;gap:7px;margin-bottom:4px}.facture-section-title i{color:var(--accent);font-size:12px}.facture-field{display:flex;justify-content:space-between;align-items:center;font-size:13px;gap:12px}.facture-field span{color:var(--text-muted);flex-shrink:0}.facture-field strong{color:var(--text-primary);font-size:14px;text-align:right}.facture-dates-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px 16px}.facture-total-zone{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;background:linear-gradient(135deg,#cdff440d,#1a1a2e66);border-top:1px solid rgba(205,255,68,.15)}.facture-total-label{font-family:Orbitron,sans-serif;font-size:13px;font-weight:700;letter-spacing:2px;color:var(--text-muted);text-transform:uppercase}.facture-total-value{font-family:Orbitron,sans-serif;font-size:32px;font-weight:900;color:var(--accent);text-shadow:0 0 20px rgba(205,255,68,.3)}.facture-footer-note{text-align:center;padding:12px 24px;font-size:11px;color:var(--text-muted);display:flex;align-items:center;justify-content:center;gap:8px;border-top:1px solid var(--border);background:#00000026}@media print{body *{visibility:hidden}.facture-modal,.facture-modal *{visibility:visible}.facture-modal{position:fixed;top:0;left:0;width:100%}.btn,.modal-close{display:none!important}.facture-body{color:#000;background:#fff}.facture-header-band{background:#f8f8f8!important;border-bottom:2px solid #ccc}.facture-total-zone{background:#f0f0f0!important}.facture-section-title i,.facture-num{color:#333!important}}
