/* Styles d'administration pour le plugin ESI Peppol */ .esi-peppol-settings-wrap { max-width: 900px; } .esi-peppol-settings-card { background: #ffffff; border-radius: 8px; box-shadow: 0 8px 20px rgba(15, 23, 42, 0.06); padding: 24px 28px; margin-top: 20px; } .esi-peppol-settings-card h2 { margin-top: 0; margin-bottom: 12px; } .esi-peppol-settings-card .form-table th { width: 220px; } .esi-peppol-settings-card .form-table td input.regular-text { max-width: 420px; } .esi-peppol-password-wrapper { display: flex; align-items: center; gap: 8px; } .esi-peppol-password-wrapper .regular-text { flex: 1 1 auto; } .esi-peppol-webhook-url-wrapper { display: flex; align-items: center; gap: 8px; } .esi-peppol-webhook-url-wrapper .regular-text { flex: 1 1 auto; background-color: #f6f7f7; cursor: text; } .esi-peppol-webhook-url-wrapper .regular-text:focus { background-color: #ffffff; } .esi-peppol-webhook-url-display { flex: 1 1 auto; display: inline-block; padding: 6px 10px; background-color: #f6f7f7; border: 1px solid #ddd; border-radius: 4px; font-family: 'Courier New', Courier, monospace; font-size: 13px; line-height: 1.6; color: #1d2327; word-break: break-all; } #esi-peppol-test-result { margin-top: 15px; } #esi-peppol-test-result .notice { padding: 8px 12px; } /* Styles pour le logo email */ .esi-peppol-logo-preview { margin-top: 12px; padding: 12px; background: #f9f9f9; border: 1px solid #ddd; border-radius: 4px; display: inline-block; max-width: 300px; } .esi-peppol-logo-preview img { max-width: 100%; height: auto; display: block; } #esi-peppol-remove-logo { margin-left: 8px; } /* Styles pour les statuts dans les logs */ .statut { display: inline-block; padding: 4px 12px; border-radius: 6px; font-size: 13px; font-weight: 500; line-height: 1.4; text-align: center; white-space: nowrap; } /* Styles pour les liens de statut (macarons cliquables) */ a.statut { text-decoration: none; transition: opacity 0.2s ease, transform 0.1s ease; cursor: pointer; } a.statut:hover { opacity: 0.85; text-decoration: none; transform: scale(1.05); } a.statut:visited { color: inherit; } /* Couleurs par défaut pour les statuts communs */ .statut-success, .statut-succès, .statut-completed, .statut-complété, .statut-ok, .statut-created, .statut-sent, .statut-envoyé { background-color: #10b981; color: #ffffff; } .statut-error, .statut-erreur, .statut-failed, .statut-échec { background-color: #ef4444; color: #ffffff; } .statut-pending, .statut-en-attente, .statut-waiting, .statut-en-cours { background-color: #f59e0b; color: #ffffff; } .statut-processing, .statut-traitement { background-color: #3b82f6; color: #ffffff; } /* Statut par défaut pour les valeurs non reconnues */ .statut-default { background-color: #6b7280; color: #ffffff; } /* Styles pour la modal de détails des logs */ .esi-peppol-modal { position: fixed; top: 0; left: 0; width: 100%; height: 100%; z-index: 100000; display: flex; align-items: center; justify-content: center; } .esi-peppol-modal-overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-color: rgba(0, 0, 0, 0.7); cursor: pointer; } .esi-peppol-modal-content { position: relative; background: #ffffff; border-radius: 8px; box-shadow: 0 20px 60px rgba(0, 0, 0, 0.3); max-width: 90%; max-height: 90vh; width: 800px; display: flex; flex-direction: column; z-index: 1; } .esi-peppol-modal-header { display: flex; align-items: center; justify-content: space-between; padding: 20px 24px; border-bottom: 1px solid #ddd; } .esi-peppol-modal-header h2 { margin: 0; font-size: 20px; font-weight: 600; } .esi-peppol-modal-close { background: none; border: none; cursor: pointer; padding: 4px; color: #666; font-size: 20px; line-height: 1; transition: color 0.2s; } .esi-peppol-modal-close:hover { color: #000; } .esi-peppol-modal-close .dashicons { width: 20px; height: 20px; font-size: 20px; } .esi-peppol-modal-body { padding: 24px; overflow-y: auto; flex: 1; } .esi-peppol-loading { text-align: center; padding: 40px 20px; } .esi-peppol-loading .spinner { float: none; margin: 0 auto 10px; } .esi-peppol-log-details-section { margin-bottom: 30px; } .esi-peppol-log-details-section:last-child { margin-bottom: 0; } .esi-peppol-log-details-section h3 { margin-top: 0; margin-bottom: 15px; font-size: 16px; font-weight: 600; color: #1d2327; border-bottom: 2px solid #2271b1; padding-bottom: 8px; } .esi-peppol-log-details-section table { margin: 0; } .esi-peppol-log-details-section table th { background-color: #f6f7f7; font-weight: 600; padding: 12px; text-align: left; vertical-align: top; } .esi-peppol-log-details-section table td { padding: 12px; vertical-align: top; } .esi-peppol-log-json { background-color: #f6f7f7; border: 1px solid #ddd; border-radius: 4px; padding: 15px; overflow-x: auto; font-family: 'Courier New', Courier, monospace; font-size: 13px; line-height: 1.6; max-height: 400px; overflow-y: auto; white-space: pre-wrap; word-wrap: break-word; } .esi-peppol-error { color: #d63638; padding: 15px; background-color: #fcf0f1; border-left: 4px solid #d63638; margin: 0; } /* Styles Bootstrap pour les boutons dans les logs */ /* Règles communes pour tous les boutons */ .esi-peppol-log-detail.btn-info, .esi-peppol-log-resend.btn-warning, .esi-peppol-log-status.btn-primary { border: 2px solid; border-radius: 6px; font-weight: 500; margin-bottom: 6px; } .esi-peppol-log-detail.btn-info:focus, .esi-peppol-log-detail.btn-info:active, .esi-peppol-log-resend.btn-warning:focus, .esi-peppol-log-resend.btn-warning:active, .esi-peppol-log-status.btn-primary:focus, .esi-peppol-log-status.btn-primary:active { outline: none; } /* Styles spécifiques pour le bouton Détail (Info) */ .esi-peppol-log-detail.btn-info { background-color: #d1ecf1; border-color: #0dcaf0; color: #0c5460; } .esi-peppol-log-detail.btn-info:hover { background-color: #bee5eb; border-color: #0aa2c0; } .esi-peppol-log-detail.btn-info:focus, .esi-peppol-log-detail.btn-info:active { background-color: #bee5eb; border-color: #0aa2c0; box-shadow: 0 0 0 0.2rem rgba(13, 202, 240, 0.5); } /* Styles spécifiques pour le bouton Renvoyer (Warning) */ .esi-peppol-log-resend.btn-warning { background-color: #fff3cd; border-color: #ffc107; color: #856404; } .esi-peppol-log-resend.btn-warning:hover { background-color: #ffeaa7; border-color: #ffb300; } .esi-peppol-log-resend.btn-warning:focus, .esi-peppol-log-resend.btn-warning:active { background-color: #ffeaa7; border-color: #ffb300; box-shadow: 0 0 0 0.2rem rgba(255, 193, 7, 0.5); } /* Styles spécifiques pour le bouton Status (Primary) */ .esi-peppol-log-status.btn-primary { background-color: #cfe2ff; border-color: #0d6efd; color: #084298; } .esi-peppol-log-status.btn-primary:hover { background-color: #b6d4fe; border-color: #0a58ca; } .esi-peppol-log-status.btn-primary:focus, .esi-peppol-log-status.btn-primary:active { background-color: #b6d4fe; border-color: #0a58ca; box-shadow: 0 0 0 0.2rem rgba(13, 110, 253, 0.5); } /* Espacement entre les boutons dans la colonne Actions */ #esi-peppol-logs-table td .esi-peppol-log-resend, #esi-peppol-logs-table td .esi-peppol-log-status { margin-left: 8px; } /* Styles pour les icônes dans les boutons des logs */ .esi-peppol-log-detail .dashicons, .esi-peppol-log-resend .dashicons, .esi-peppol-log-status .dashicons { vertical-align: middle; margin-right: 4px; font-size: 16px; width: 16px; height: 16px; line-height: 1; } /* ==================================== TIMELINE VERTICALE - DASHBOARD ==================================== */ .esi-peppol-setup-guide { max-width: 900px; margin-top: 30px; } .step { position: relative; padding-left: 70px; padding-bottom: 40px; min-height: 80px; } /* Dernier élément sans padding-bottom */ .step:last-child { padding-bottom: 0; } /* Cercle numéroté (::before) */ .step::before { content: attr(data-step); position: absolute; left: 0; top: 0; width: 44px; height: 44px; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-weight: 600; font-size: 18px; z-index: 2; /* État par défaut : cercle blanc, bord gris, numéro gris */ background-color: #ffffff; border: 3px solid #d1d5db; color: #9ca3af; } /* Ligne verticale (::after) */ .step::after { content: ''; position: absolute; left: 22px; /* Centre du cercle (44px / 2) */ top: 44px; /* Sous le cercle */ bottom: 0; width: 3px; /* État par défaut : ligne grise */ background-color: #d1d5db; z-index: 1; } /* Masquer la ligne sur le dernier élément */ .step:last-child::after { display: none; } /* Carte de contenu */ .step-card { background-color: #f3f4f6; border: 2px solid #e5e7eb; border-radius: 8px; padding: 20px 24px; transition: all 0.3s ease; } .step-card h3 { margin: 0 0 8px 0; font-size: 18px; font-weight: 600; color: #374151; } .step-card p { margin: 0 0 16px 0; color: #6b7280; line-height: 1.6; } .step-card .step-value { display: inline-block; background-color: #ffffff; border: 1px solid #d1d5db; border-radius: 4px; padding: 8px 12px; margin-top: 8px; } .step-card .step-value strong { display: block; margin-bottom: 4px; font-size: 13px; color: #6b7280; } .step-card .step-value code { color: #1f2937; font-size: 14px; font-weight: 500; } .step-card .step-note { margin-top: 12px; font-size: 13px; color: #6b7280; font-style: italic; } <<<<<<< HEAD /* ======================================== ÉTAT COMPLÉTÉ : .is-done ======================================== */ .step.is-done::before { /* Check ✓ ou numéro en bleu */ background-color: #dbeafe; border-color: #3b82f6; color: #2563eb; font-weight: 700; } .step.is-done::after { /* Ligne bleue */ background-color: #3b82f6; } .step.is-done .step-card { /* Carte fond bleu, texte blanc */ background: linear-gradient(135deg, #3b82f6 0%, #2563eb 100%); border-color: #2563eb; box-shadow: 0 4px 12px rgba(37, 99, 235, 0.2); } .step.is-done .step-card h3 { color: #ffffff; } .step.is-done .step-card p { color: #dbeafe; } .step.is-done .step-card .step-value { background-color: rgba(255, 255, 255, 0.95); border-color: #2563eb; } .step.is-done .step-card .step-value strong { color: #2563eb; } .step.is-done .step-card .step-value code { color: #1e40af; background-color: #eff6ff; padding: 2px 6px; border-radius: 3px; } /* Pour afficher un check ✓ sur les étapes complétées */ .step.is-done[data-step="✓"]::before { font-size: 22px; content: "✓"; ======= .esi-peppol-dashboard-actions { margin-top: 40px; padding-top: 30px; border-top: 2px solid #f0f0f1; } .esi-peppol-dashboard-actions h2 { margin: 0 0 16px 0; font-size: 20px; font-weight: 600; color: #1d2327; >>>>>>> f1fd1fe1015c57a9f30ec2f84ef5b774162d5a83 }