.account-wrap{max-width:760px;margin:0 auto;padding:28px 16px 80px;}
.account-wrap h1{font-size:clamp(1.5rem,4vw,2rem);margin:0 0 6px;}
.account-wrap > p.sub{margin:0 0 22px;opacity:0.75;}
.panel{background:var(--white);border:1px solid rgba(128,128,128,0.2);border-radius:var(--radius);padding:20px;margin-bottom:18px;}
.panel h2{font-size:1.15rem;margin:0 0 12px;}
.auth-box{max-width:420px;margin:0 auto;}
.auth-tabs{display:flex;gap:6px;margin-bottom:16px;}
.auth-tabs button{flex:1;border:2px solid rgba(128,128,128,0.3);background:var(--white);border-radius:999px;padding:10px;font-weight:700;}
.auth-tabs button.active{background:var(--charcoal);color:var(--cream);border-color:var(--charcoal);}
.link-btn{border:none;background:none;padding:0;color:var(--ocre-dark);font-weight:600;text-decoration:underline;font-size:0.86rem;}
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:0 12px;}
@media (max-width:560px){ .two-col{grid-template-columns:1fr;} }
.acc-order{border-top:1px solid rgba(128,128,128,0.2);padding:14px 0;}
.acc-order:first-of-type{border-top:none;padding-top:0;}
.acc-order-head{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;align-items:baseline;}
.acc-order-head strong{font-size:1rem;}
.acc-meta{font-size:0.82rem;opacity:0.75;margin:2px 0 8px;}
.acc-status{display:inline-block;font-size:0.72rem;font-weight:700;padding:3px 9px;border-radius:999px;background:var(--cream-2);margin-left:6px;}
.acc-status.st-nouvelle{background:rgba(209,183,64,0.35);}
.acc-status.st-preparee{background:var(--ok-bg);color:var(--ok-fg);}
.acc-status.st-annulee{background:var(--ko-bg);color:var(--ko-fg);}
.acc-items{list-style:none;padding:0;margin:0 0 10px;font-size:0.88rem;}
.acc-items li{display:flex;justify-content:space-between;gap:10px;padding:3px 0;}
.acc-items .detail{display:block;font-size:0.78rem;opacity:0.7;}
.acc-actions{display:flex;gap:8px;flex-wrap:wrap;}
.acc-actions .primary-btn{width:auto;padding:9px 16px;font-size:0.85rem;}
.acc-actions .ghost-btn{padding:8px 14px;font-size:0.82rem;}
.more-btn{margin-top:8px;}
.check-line{display:flex;gap:10px;align-items:flex-start;font-size:0.88rem;line-height:1.45;margin:4px 0 12px;cursor:pointer;}
.check-line input{width:18px;height:18px;flex-shrink:0;margin-top:1px;accent-color:var(--ocre-dark);}
#loyaltyPanel{border:2px solid var(--ocre);}
.loyalty-balance strong{display:block;font-family:'Bricolage Grotesque Variable','Bricolage Grotesque',sans-serif;font-size:1.8rem;line-height:1.1;}
.loyalty-balance span{display:block;font-size:0.92rem;margin-top:4px;}
.loyalty-bar{height:10px;border-radius:999px;background:var(--cream-2);margin:12px 0;overflow:hidden;}
.loyalty-bar span{display:block;height:100%;background:var(--ocre);border-radius:999px;}
.loyalty-rules{font-size:0.84rem;line-height:1.55;opacity:0.8;margin:0;}
.loyalty-moves{margin-top:12px;font-size:0.86rem;}
.loyalty-moves summary{cursor:pointer;font-weight:600;color:var(--ocre-dark);}
.loyalty-moves ul{list-style:none;padding:0;margin:8px 0 0;}
.loyalty-moves li{display:flex;justify-content:space-between;gap:10px;padding:5px 0;border-top:1px solid rgba(128,128,128,0.15);}
.loyalty-moves .neg{color:var(--ko-fg);}
.legal .panel p,.legal .panel li{font-size:0.92rem;line-height:1.6;}
.legal .panel ul{padding-left:20px;margin:0 0 10px;}
.legal a,.legal-footer a{color:var(--ocre-dark);}
.legal-footer{text-align:center;padding:10px 16px 40px;font-size:0.8rem;opacity:0.8;}
@media print{
  header,.panel:not(.printing),.account-wrap > h1,.account-wrap > p.sub,.acc-actions,.more-btn{display:none !important;}
  .panel.printing .acc-order:not(.printing){display:none !important;}
  body{background:#fff;color:#000;}
  .panel.printing{border:none;padding:0;}
}
