/* Customer accounts, cart and checkout. Brand: #93c43d green, #232221 dark, #5c7d23 dark green, #f1f8e2 pale. */
.ac-wrap{max-width:1180px;margin:0 auto;padding:0 16px}
.ac-narrow{max-width:480px;margin:0 auto;padding:32px 16px 72px}
.ac-card{background:#fff;border:1px solid #e5e7eb;border-radius:18px;padding:28px}
.ac-h1{font-family:'Big Shoulders',sans-serif;font-weight:800;font-size:clamp(34px,4vw,46px);line-height:1;color:#232221;text-transform:uppercase}
.ac-h2{font-weight:700;font-size:20px;color:#232221;margin-bottom:14px}
.ac-sub{color:#4b5563;margin-top:8px;font-size:15px;line-height:1.6}
.ac-form{display:grid;gap:16px;margin-top:24px}
.ac-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.ac-field label{display:block;font-size:14px;font-weight:600;color:#232221;margin-bottom:6px}
.ac-field input,.ac-field select,.ac-field textarea{width:100%;border:1px solid #d1d5db;border-radius:10px;padding:13px 14px;font-size:16px;background:#fff;color:#232221}
.ac-field input:focus,.ac-field select:focus,.ac-field textarea:focus{outline:none;border-color:#93c43d;box-shadow:0 0 0 4px #93c43d26}
.ac-field small{display:block;color:#6b7280;font-size:13px;margin-top:5px}
.ac-check{display:flex;gap:10px;align-items:flex-start;font-size:14px;color:#374151;line-height:1.5}
.ac-check input{margin-top:3px;width:18px;height:18px;accent-color:#5c7d23;flex:none}
.ac-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:#93c43d;color:#232221;font-weight:700;border-radius:12px;padding:14px 22px;font-size:16px;border:0;cursor:pointer;transition:background .2s;text-decoration:none}
.ac-btn:hover{background:#86b336}
.ac-btn.block{width:100%}
.ac-btn.dark{background:#232221;color:#fff}.ac-btn.dark:hover{background:#000}
.ac-btn.ghost{background:#fff;border:1px solid #d1d5db;color:#232221}.ac-btn.ghost:hover{border-color:#232221}
.ac-btn[disabled]{opacity:.5;cursor:not-allowed}
.ac-link{color:#5c7d23;font-weight:600}
.ac-link:hover{text-decoration:underline}
.ac-alt{text-align:center;font-size:14px;color:#4b5563;margin-top:18px}
.ac-flash{border-radius:12px;padding:12px 16px;font-size:14px;line-height:1.5;margin-bottom:14px}
.ac-flash.ok{background:#f1f8e2;color:#3f5a14;border:1px solid #d6e9b3}
.ac-flash.err{background:#fef2f2;color:#991b1b;border:1px solid #fecaca}
.ac-flash.info{background:#f3f4f6;color:#374151;border:1px solid #e5e7eb}
/* account dashboard */
.ac-dash{display:grid;grid-template-columns:260px 1fr;gap:28px;padding:32px 0 80px}
.ac-nav{display:flex;flex-direction:column;gap:4px;position:sticky;top:96px;align-self:start}
.ac-nav a,.ac-nav button{display:block;text-align:left;padding:11px 14px;border-radius:10px;font-weight:600;color:#374151;font-size:15px;background:none;border:0;cursor:pointer;width:100%}
.ac-nav a:hover,.ac-nav button:hover{background:#f1f8e2;color:#3f5a14}
.ac-nav a.on{background:#232221;color:#fff}
.ac-hello{padding:4px 14px 14px;font-size:14px;color:#6b7280}
.ac-hello b{display:block;font-size:20px;color:#232221}
.ac-stack{display:grid;gap:22px}
.ac-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.ac-stat{background:#f1f8e2;border-radius:14px;padding:16px 18px}
.ac-stat b{display:block;font-family:'Big Shoulders',sans-serif;font-size:30px;font-weight:800;color:#232221;line-height:1.1}
.ac-stat small{color:#4b5563;font-size:13px}
.ac-orders{width:100%;border-collapse:collapse;font-size:15px}
.ac-orders th{text-align:left;font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:#6b7280;padding:0 10px 10px;border-bottom:1px solid #e5e7eb}
.ac-orders td{padding:14px 10px;border-bottom:1px solid #f0f0f0;vertical-align:middle}
.ac-pill{display:inline-block;font-size:12px;font-weight:700;padding:4px 10px;border-radius:99px;background:#f3f4f6;color:#374151;white-space:nowrap}
.ac-pill.placed{background:#eef2ff;color:#3730a3}.ac-pill.preparing{background:#fff7ed;color:#9a3412}.ac-pill.ready{background:#f1f8e2;color:#3f5a14}
.ac-pill.picked_up{background:#f3f4f6;color:#374151}.ac-pill.cancelled{background:#fef2f2;color:#991b1b}
.ac-empty{text-align:center;padding:36px 16px;color:#6b7280}
.ac-empty b{display:block;color:#232221;font-size:18px;margin-bottom:6px}
/* cart */
.ct-grid{display:grid;grid-template-columns:1fr 380px;gap:28px;padding:28px 0 80px;align-items:start}
.ct-line{display:grid;grid-template-columns:96px 1fr auto;gap:16px;padding:18px 0;border-bottom:1px solid #f0f0f0;align-items:center}
.ct-line img{width:96px;height:96px;object-fit:contain;background:#f7f7f5;border-radius:12px;padding:6px}
.ct-line .br{font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#5c7d23}
.ct-line h3{font-weight:700;color:#232221;font-size:16px;line-height:1.3}
.ct-line .fl{font-size:14px;color:#6b7280;margin-top:2px}
.ct-line .warn{font-size:13px;color:#b91c1c;font-weight:600;margin-top:4px}
.ct-qty{display:inline-flex;align-items:center;border:1px solid #d1d5db;border-radius:10px;margin-top:10px}
.ct-qty button{width:34px;height:34px;font-size:18px;color:#232221;background:none;border:0;cursor:pointer}
.ct-qty span{min-width:28px;text-align:center;font-weight:700}
.ct-rm{font-size:13px;color:#6b7280;margin-left:12px;text-decoration:underline;background:none;border:0;cursor:pointer}
.ct-price{text-align:right;font-weight:700;color:#232221;white-space:nowrap}
.ct-price small{display:block;font-weight:400;color:#6b7280;font-size:13px}
.ct-side{position:sticky;top:96px}
.ct-sum{display:flex;justify-content:space-between;font-size:15px;color:#374151;padding:6px 0}
.ct-sum.total{font-size:20px;font-weight:800;color:#232221;border-top:1px solid #e5e7eb;margin-top:8px;padding-top:14px}
.ct-stores{display:grid;gap:10px;margin:8px 0 18px}
.ct-store{display:flex;gap:12px;align-items:flex-start;border:1.5px solid #e5e7eb;border-radius:12px;padding:12px 14px;cursor:pointer;font-size:14px;color:#4b5563}
.ct-store input{margin-top:4px;accent-color:#5c7d23}
.ct-store b{display:block;color:#232221;font-size:15px}
.ct-store.on{border-color:#93c43d;background:#f9fcf2}
.ct-note{font-size:13px;color:#6b7280;line-height:1.5;margin-top:14px}
/* cart drawer */
.cd-back{position:fixed;inset:0;background:#0006;z-index:60}
.cd-panel{position:fixed;top:0;right:0;bottom:0;width:min(420px,100vw);background:#fff;z-index:61;display:flex;flex-direction:column;box-shadow:-10px 0 40px #0002}
.cd-head{display:flex;justify-content:space-between;align-items:center;padding:20px 22px;border-bottom:1px solid #eee}
.cd-head h2{font-weight:800;font-size:20px}
.cd-x{width:38px;height:38px;border-radius:99px;border:1px solid #e5e7eb;font-size:20px;line-height:1;background:#fff;cursor:pointer}
.cd-body{flex:1;overflow-y:auto;padding:4px 22px}
.cd-body .ct-line{grid-template-columns:72px 1fr auto}
.cd-body .ct-line img{width:72px;height:72px}
.cd-foot{border-top:1px solid #eee;padding:18px 22px;display:grid;gap:10px}
.cd-toast{position:fixed;left:50%;bottom:90px;transform:translateX(-50%);background:#232221;color:#fff;padding:12px 18px;border-radius:12px;font-size:14px;font-weight:600;z-index:70;box-shadow:0 10px 30px #0003}
.hd-badge{position:absolute;top:-4px;right:-4px;min-width:20px;height:20px;border-radius:99px;background:#232221;color:#fff;font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center;padding:0 5px;border:2px solid #fff}
@media (max-width:900px){
  .ac-dash{grid-template-columns:1fr;gap:18px;padding-top:20px}
  .ac-nav{position:static;flex-direction:row;overflow-x:auto;gap:6px}
  .ac-nav a,.ac-nav button{white-space:nowrap;width:auto}
  .ac-hello{display:none}
  .ct-grid{grid-template-columns:1fr}
  .ct-side{position:static}
}
@media (max-width:560px){
  .ac-card{padding:20px}
  .ac-row{grid-template-columns:1fr}
  .ac-stats{grid-template-columns:1fr 1fr}
  .ac-orders .hide-sm{display:none}
  .ct-line{grid-template-columns:72px 1fr;}
  .ct-line img{width:72px;height:72px}
  .ct-price{grid-column:2;text-align:left}
}
[x-cloak]{display:none!important}
