﻿.bp-compte { color: var(--ink); }
.bp-compte-grille { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; margin-bottom: 16px; }
.bp-compte-carte { border: 1px solid var(--line); border-radius: 12px; padding: 18px; margin-bottom: 16px; background: var(--soft); }
.bp-compte-grille > .bp-compte-carte { margin-bottom: 0; }
.bp-compte h3 { font: 600 18px var(--serif); margin: 0 0 12px; }
.bp-compte p { font: 400 15px/1.55 var(--serif); margin: 8px 0 12px; }
.bp-compte .bp-compte-note { font-size: 13.5px; color: var(--muted); }
.bp-compte .bp-compte-grand { font-size: 24px; margin-top: 4px; }
.bp-compte dl { margin: 0; }
.bp-compte-champ { padding: 9px 0; border-bottom: 1px solid var(--line); }
.bp-compte-champ:last-child { border: 0; }
.bp-compte dt { font-size: 12px; color: var(--muted); margin-bottom: 3px; }
.bp-compte dd { margin: 0; font-size: 15px; overflow-wrap: anywhere; }
.bp-compte-serie { user-select: all; overflow-wrap: anywhere; }
.bp-compte summary { cursor: pointer; padding: 10px 0; }
.bp-compte-choix { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; margin: 16px 0 0; }
.bp-compte-choix label { display: flex; gap: 7px; align-items: center; font-size: 14px; }
.bp-compte-choix input { accent-color: var(--ink); flex-shrink: 0; }
.bp-compte-choix small { color: var(--muted); }
.bp-compte-actions { display: flex; flex-wrap: wrap; gap: 10px; }
.bp-compte-actions label { cursor: pointer; }
.bp-compte-projets { max-height: 160px; overflow: auto; padding-left: 20px; font-size: 14px; }
.bp-compte-projets li { margin: 5px 0; overflow-wrap: anywhere; }
.bp-compte [data-mc-message]:not(:empty) { border-left: 3px solid var(--line); padding: 8px 12px; }
.bp-compte .bp-compte-intertitre { margin: 24px 0 10px; }
@media (max-width: 650px) { .bp-compte-grille, .bp-compte-choix { grid-template-columns: 1fr; } .mdl-corps.bp-compte { padding: 16px; } .bp-compte-carte { padding: 15px; } }

.bp-compte-coffre > label, .bp-compte-coffre details > label { display: block; margin: 12px 0; font-size: 14px; line-height: 1.5; }
.bp-compte-coffre input:not([type="checkbox"]), .bp-compte-coffre select { display: block; box-sizing: border-box; width: 100%; padding: 10px; border: 1px solid var(--line); border-radius: 7px; margin: 6px 0 12px; color: var(--ink); background: var(--surface); font-size: 14px; }
.bp-compte-coffre input[readonly] { font-family: monospace; font-size: 12px; }
.bp-compte-coffre input[type="checkbox"] { accent-color: var(--ink); }
.bp-compte-coffre [data-coffre-message]:not(:empty) { padding: 10px 12px; border-left: 3px solid var(--line); }
.bp-compte-coffre button:disabled { opacity: .55; cursor: default; }

.bp-compte-confirmation { margin: 16px 0; padding: 14px; border: 1px solid var(--line); border-radius: 8px; background: var(--surface); }

.bp-protection { max-width: 590px; margin: auto; color: var(--ink); }
.bp-protection p { font: 15px/1.65 var(--serif); margin: 0 0 18px; }
.bp-protection form > label { display: block; margin: 17px 0; font-size: 14px; }
.bp-protection input[type="password"] { display: block; width: 100%; box-sizing: border-box; margin-top: 7px; padding: 12px; font-size: 17px; border: 1px solid var(--line); border-radius: 8px; color: var(--ink); background: var(--surface); }
.bp-protection .bp-protection-rappel { color: var(--muted); font-size: 14px; padding-left: 14px; border-left: 3px solid var(--accent); }
.bp-protection .bp-protection-active { font-size: 19px; font-weight: 600; }
.bp-protection > label { display: block; margin: 18px 0 25px; font-size: 14px; }
.bp-protection button:disabled { opacity: .55; cursor: wait; }
.bp-protection [data-protection-message]:not(:empty) { margin-top: 16px; color: var(--accent); }

/* Valider mon compte (12/11/2026) */
.bp-compte-valider label { display: block; margin: 10px 0 0; font-size: 14px; color: var(--muted); }
.bp-compte-valider input, .bp-compte-valider textarea { display: block; box-sizing: border-box; width: 100%; padding: 10px; border: 1px solid var(--line); border-radius: 7px; margin: 6px 0 4px; color: var(--ink); background: var(--surface); font: inherit; font-size: 14px; }
.bp-compte-valider button { margin-top: 10px; }
