/* Formulaires et blocs du compte client (style /emploi) */
.cform-sec > * { max-width: 520px; }
.seg { display: grid; grid-template-columns: 1fr 1fr; background: #f3f3f3; border-radius: 99px; padding: 4px; margin-bottom: 28px; }
.seg button { height: 42px; border: 0; border-radius: 99px; background: none; font: inherit; font-weight: 500; font-size: .95rem; color: #111; cursor: pointer; transition: background .15s, color .15s; }
.seg button.on { background: #000; color: #fff; }

.cform label { display: block; font-size: .95rem; font-weight: 500; margin: 20px 0 8px; color: #111; }
.cform label:first-child { margin-top: 0; }
.cform input { width: 100%; height: 52px; background: #f3f3f3; border: 2px solid transparent; border-radius: 8px; padding: 0 16px; font: inherit; font-size: 1rem; color: #111; transition: border-color .15s, background .15s; }
.cform input:focus { outline: 0; background: #fff; border-color: #000; }
.cform input:disabled { color: #7a7a7a; }
.cform .hbtn { width: 100%; margin-top: 26px; }
.cnote { margin-top: 16px; font-size: .88rem; line-height: 1.5; color: #6b6b6b; }
.cerr { background: #fdecec; color: #a8201a; border-radius: 8px; padding: 14px 16px; font-weight: 500; margin-bottom: 22px; }
.cok { background: #eaf9c4; color: #3d5a00; border-radius: 8px; padding: 14px 16px; font-weight: 500; margin: 18px 0 0; }
.hbtn.out { width: 100%; max-width: 520px; background: #fff; color: #b3261e; box-shadow: inset 0 0 0 1.5px #b3261e; margin-top: 14px; }
.hgrey .cform + form { max-width: 520px; margin-left: auto; margin-right: auto; }
.cform-sec h2 + .cform { margin-top: 24px; }

/* Historique des commandes */
.olist { display: grid; gap: 14px; margin-top: 26px; }
.oc { border: 1px solid #e2e2e2; border-radius: 14px; overflow: hidden; background: #fff; }
.oc-main { display: block; padding: 18px 18px 14px; color: #111; }
.oc-top { display: flex; justify-content: space-between; align-items: center; gap: 12px; }
.oc-top b { font-size: 1.1rem; font-weight: 800; letter-spacing: -.02em; }
.oc-items { margin-top: 8px; color: #545454; font-size: .95rem; line-height: 1.45; }
.oc-bot { margin-top: 12px; display: flex; justify-content: space-between; gap: 12px; color: #6b6b6b; font-size: .88rem; }
.oc-bot b { color: #111; font-size: 1rem; }
.oc-re { display: block; padding: 14px 18px; border-top: 1px solid #eee; font-weight: 500; font-size: .95rem; text-align: center; color: #111; }
.oc-re:active { background: #f6f6f6; }
.st { font-size: .78rem; font-weight: 700; padding: 5px 11px; border-radius: 99px; background: #eee; color: #333; white-space: nowrap; }
.st-delivered { background: #eaf9c4; color: #3d5a00; }
.st-cancelled { background: #fdecec; color: #a8201a; }
.st-new, .st-accepted, .st-picked { background: #fff3d9; color: #8a5a00; }

@media (min-width: 860px) { .olist { grid-template-columns: repeat(2, 1fr); } }
