:root{--bg-color:#0A0A10;--bg-surface:#10101A;--bg-surface-2:#1A1A28;--bg-input:#000000;--text-color:#F0F0F5;--text-secondary:#8E8E9E;--primary-color:#7A5EFF;--primary-hover:#907CFF;--border-color:#302F4D;--error-color:#E53935;--success-color:#4CAF50;--disabled-color:#4A4A5C;--missed-call-color:#FF5252;--shadow-color:rgba(0,0,0,0.3);--glow-color-soft:rgba(122,94,255,0.2);}*{box-sizing:border-box;margin:0;padding:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;}html{scroll-behavior:smooth;}body{background-color:var(--bg-color);color:var(--text-color);display:flex;flex-direction:column;min-height:100vh;font-size:15px;line-height:1.6;}a{color:var(--primary-color);text-decoration:none;}a:hover{color:var(--primary-hover);text-decoration:underline;}header{background:var(--bg-surface);padding:0.8rem 2rem;border-bottom:1px solid var(--border-color);box-shadow:0 2px 10px var(--shadow-color);display:flex;justify-content:space-between;align-items:center;position:sticky;top:0;z-index:100;}header .logo{font-size:1.3rem;font-weight:600;color:var(--text-color);text-decoration:none;}header .logo i{color:var(--primary-color);margin-right:8px;}header nav ul{list-style:none;display:flex;gap:0.5rem;align-items:center;}header nav a{color:var(--text-secondary);text-decoration:none;font-weight:500;padding:0.5rem 1rem;border-radius:8px;transition:color 0.3s ease,background-color 0.3s ease;display:flex;align-items:center;gap:8px;font-size:0.9rem;}header nav a:hover{color:var(--text-color);background-color:var(--bg-surface-2);text-decoration:none;}header nav a.active{background-color:var(--primary-color);color:#FFFFFF;font-weight:500;box-shadow:0 2px 8px var(--glow-color-soft);}header nav a.active:hover{background-color:var(--primary-hover);color:#FFFFFF;}header nav #logout-btn{background-color:transparent;color:var(--text-secondary);border:none;border-radius:8px;padding:0.5rem 0.8rem;cursor:pointer;font-weight:500;font-size:1.2rem;line-height:1;transition:all 0.3s ease;}header nav #logout-btn:hover{color:var(--error-color);background-color:rgba(229,57,53,0.1);}.container{width:90%;max-width:1300px;margin:2rem auto;}h1{color:var(--text-color);font-size:1.8rem;margin-bottom:1.5rem;font-weight:600;}.panel{background:var(--bg-surface);border-radius:12px;padding:1.5rem 2rem;margin-bottom:1.5rem;border:1px solid var(--border-color);box-shadow:0 4px 15px var(--shadow-color);}.panel h2{color:var(--text-color);border-bottom:1px solid var(--border-color);padding-bottom:0.8rem;margin-bottom:1.5rem;font-size:1.15rem;font-weight:600;display:flex;align-items:center;gap:10px;}.panel h2 i{color:var(--text-secondary);}.panel-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem;}.form-group{margin-bottom:1.25rem;}.form-group label{display:block;margin-bottom:0.5rem;font-weight:500;font-size:0.9rem;color:var(--text-secondary);}.form-group input,.form-group select,.form-group textarea,.admin-search,.admin-filter,.currency-selector{width:100%;padding:0.8rem 1rem;background-color:var(--bg-input);border:1px solid var(--border-color);border-radius:8px;color:var(--text-color);font-size:0.95rem;transition:border-color 0.3s ease,box-shadow 0.3s ease;box-shadow:0 0 8px var(--glow-color-soft);}.form-group select{appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='%238E8E9E' viewBox='0 0 16 16'%3E%3Cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center;background-size:1em;}.form-group input:focus,.form-group select:focus,.form-group textarea:focus,.admin-search:focus,.admin-filter:focus,.currency-selector:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px var(--glow-color-soft);}.form-group input::placeholder,.form-group textarea::placeholder{color:var(--text-secondary);opacity:0.7;}button,.buy-btn,.buy-did-btn,#modal-save-btn{width:100%;padding:0.9rem;font-size:0.95rem;font-weight:600;color:#FFFFFF;background:var(--primary-color);border:none;border-radius:8px;cursor:pointer;transition:background-color 0.3s ease,transform 0.2s ease,box-shadow 0.3s ease;text-shadow:0 1px 3px rgba(0,0,0,0.2);display:inline-flex;align-items:center;justify-content:center;gap:8px;box-shadow:0 0 8px var(--glow-color-soft);}button:hover,.buy-btn:hover,.buy-did-btn:hover,#modal-save-btn:hover{background:var(--primary-hover);transform:translateY(-2px);box-shadow:0 4px 15px var(--glow-color-soft);}button:disabled{background:var(--disabled-color);color:var(--text-secondary);cursor:not-allowed;transform:none;opacity:0.7;box-shadow:none;}button.btn-secondary,#modal-cancel-btn{background:var(--bg-surface-2);color:var(--text-secondary);border:1px solid var(--border-color);}button.btn-secondary:hover,#modal-cancel-btn:hover{background:var(--border-color);color:var(--text-color);}button.btn-danger{background:var(--error-color);}button.btn-danger:hover{background:#c62828;}.admin-table td button,#forwarding-save-btn,#campaign-save-btn,#campaign-start-btn{width:auto;padding:0.5rem 1rem;font-size:0.9rem;}#campaign-start-btn{background-color:var(--success-color);}#campaign-start-btn:hover{background-color:#5cb85c;}.form-container{width:90%;max-width:450px;margin:4rem auto;padding:2.5rem;background:var(--bg-surface);border-radius:12px;border:1px solid var(--border-color);box-shadow:0 8px 30px var(--shadow-color);}.form-container h1{color:var(--text-color);text-align:center;margin-bottom:2rem;font-size:1.8rem;}.form-container p{text-align:center;margin-top:1.5rem;color:var(--text-secondary);}.error-message,.success-message,#shop-message,#did-message,#purchase-history-message{padding:0.8rem 1rem;border-radius:8px;margin-bottom:1.5rem;text-align:center;font-weight:500;font-size:0.9rem;}.error-message{color:var(--error-color);background-color:rgba(229,57,53,0.1);border:1px solid var(--error-color);}.success-message{color:var(--success-color);background-color:rgba(76,175,80,0.1);border:1px solid var(--success-color);}.admin-table-container{overflow-x:auto;border:1px solid var(--border-color);border-radius:8px;}table,.admin-table{width:100%;border-collapse:collapse;margin-top:0;background-color:var(--bg-surface);border-radius:8px;overflow:hidden;border:none;}th,td{padding:0.9rem 1rem;text-align:left;border-bottom:1px solid var(--border-color);font-size:0.9rem;}th,td{white-space:nowrap;}thead th{background-color:var(--bg-surface-2);color:var(--text-secondary);font-size:0.8rem;text-transform:uppercase;font-weight:600;border-bottom:2px solid var(--border-color);}tbody tr{transition:background-color 0.2s ease;}tbody tr:hover{background-color:var(--bg-surface-2);}td.status-cell{text-align:center;}.status-finished{color:var(--success-color);}.status-failed{color:var(--error-color);}.status-failed_assignment{color:#f0ad4e;}.admin-tabs{display:flex;border-bottom:2px solid var(--border-color);margin-bottom:2rem;flex-wrap:wrap;}.tab-btn{padding:0.8rem 1.5rem;cursor:pointer;background-color:transparent;border:none;color:var(--text-secondary);font-size:1rem;font-weight:500;border-bottom:3px solid transparent;transition:all 0.2s ease;width:auto;}.tab-btn:hover{color:var(--text-color);}.tab-btn.active{color:var(--primary-color);border-bottom-color:var(--primary-color);}.tab-content{display:none;}.tab-content.active{display:block;}.admin-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem;margin-bottom:1.5rem;}.admin-header h2{margin-bottom:0;border-bottom:none;padding-bottom:0;}.admin-filters{display:flex;gap:1rem;}.admin-pagination{text-align:center;margin-top:1.5rem;}.admin-pagination button{width:auto;padding:0.5rem 1rem;margin:0 0.5rem;border-radius:8px;background:var(--bg-surface-2);color:var(--text-secondary);border:1px solid var(--border-color);}.admin-pagination button:hover:not([disabled]){background:var(--border-color);color:var(--text-color);}.admin-list{background-color:var(--bg-input);border:1px solid var(--border-color);padding:1rem;border-radius:8px;height:400px;overflow-y:auto;}.admin-list h3{color:var(--text-secondary);margin-bottom:1rem;font-size:1rem;}.admin-list ul{list-style:none;}.admin-list li{padding:0.5rem;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;align-items:center;border-radius:4px;transition:background-color 0.2s ease;font-size:0.9rem;}.admin-list li:hover{background-color:var(--bg-surface-2);}.product-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.5rem;margin:2rem 0;}.product-card{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:12px;padding:1.5rem;display:flex;flex-direction:column;justify-content:space-between;transition:transform 0.3s ease,box-shadow 0.3s ease;box-shadow:0 4px 15px var(--shadow-color);}.product-card:hover{transform:translateY(-5px);box-shadow:0 8px 20px var(--shadow-color),0 0 15px var(--glow-color-soft);}.product-card h3{color:var(--text-color);font-size:1.3rem;margin-bottom:0.5rem;}.product-card .price{font-size:1.6rem;font-weight:600;color:var(--primary-color);margin-bottom:0.5rem;}.product-card .credits{font-size:0.9rem;color:var(--text-secondary);margin-bottom:1.5rem;}.currency-selector-group{margin-bottom:1rem;}.currency-selector-group label{font-size:0.85rem;color:var(--text-secondary);margin-bottom:0.5rem;display:block;text-align:left;}.product-card .buy-btn{margin-top:0;padding:0.8rem;}hr.section-divider{border:none;border-top:1px solid var(--border-color);margin:2.5rem 0;}.modal{display:none;position:fixed;z-index:1000;left:0;top:0;width:100%;height:100%;overflow:auto;background-color:rgba(0,0,0,0.8);backdrop-filter:blur(5px);}.modal .form-container{margin:10% auto;width:90%;max-width:500px;border-top:4px solid var(--primary-color);box-shadow:0 8px 50px rgba(0,0,0,0.7),0 0 30px var(--glow-color-soft);}.modal h2{margin-top:0;text-align:center;color:var(--text-color);}footer{text-align:center;padding:2rem;background:var(--bg-surface);border-top:1px solid var(--border-color);margin-top:auto;color:var(--text-secondary);font-size:0.9rem;}.footer-links{margin-bottom:1rem;display:flex;justify-content:center;gap:1.5rem;}.footer-links a{color:var(--text-secondary);text-decoration:none;font-size:1rem;transition:color 0.2s;}.footer-links a:hover{color:var(--primary-color);text-decoration:none;}.footer-links i{margin-right:0.5rem;}@media (max-width:768px){header{flex-direction:column;padding:1rem;gap:1rem;}header nav ul{flex-wrap:wrap;justify-content:center;gap:0.5rem;}.container{width:100%;padding:1rem;margin-top:1rem;border-radius:0;}.panel{padding:1.5rem 1rem;}.form-container{width:100%;margin:1rem auto;padding:2rem 1.5rem;border-radius:0;}.admin-tabs{flex-direction:column;}.tab-btn{border-bottom:2px solid var(--border-color);border-radius:0;}.admin-table-container{border:none;}table:not(#user-list-table){border:none;}table:not(#user-list-table) thead{display:none;}table:not(#user-list-table) tr{display:block;margin-bottom:1rem;border:1px solid var(--border-color);border-radius:8px;background-color:var(--bg-surface);}table:not(#user-list-table) td{display:block;text-align:right;padding-left:50%;position:relative;border-bottom:1px dotted var(--border-color);}table:not(#user-list-table) td:last-child{border-bottom:none;}table:not(#user-list-table) td:before{position:absolute;left:1rem;width:45%;text-align:left;font-weight:600;color:var(--text-secondary);content:attr(data-label);}#outbound-history-table td:nth-of-type(1):before{content:"Date";}#outbound-history-table td:nth-of-type(2):before{content:"Destinataire";}#outbound-history-table td:nth-of-type(3):before{content:"Votre N°";}#outbound-history-table td:nth-of-type(4):before{content:"Durée";}#did-history-table td:nth-of-type(1):before{content:"Date";}#did-history-table td:nth-of-type(2):before{content:"Appelant";}#did-history-table td:nth-of-type(3):before{content:"Votre N°";}#did-history-table td:nth-of-type(4):before{content:"Durée";}#number-list-table td:nth-of-type(1):before{content:"Pays";}#number-list-table td:nth-of-type(2):before{content:"Numéro";}#number-list-table td:nth-of-type(3):before{content:"Prix";}#number-list-table td:nth-of-type(4):before{content:"Action";}#number-list-table td:nth-of-type(4){text-align:center;padding-left:1rem;}.admin-header{flex-direction:column;align-items:stretch;}.admin-filters{width:100%;flex-direction:column;}.admin-number-lists{grid-template-columns:1fr;}.admin-list{height:250px;}}#number-list-table td:nth-of-type(4) .currency-selector{display:block;width:100%;margin-bottom:8px;}#number-list-table td:nth-of-type(4) .buy-did-btn{display:block;width:100%;margin-top:0;}#did-history-table tbody tr.call-missed td{color:var(--missed-call-color);font-weight:500;}
