
:root { --primary:#ea1d2c; --primary-dark:#c91522; --text:#313136; --muted:#777; --line:#ececec; --font:"Nunito Sans",Arial,sans-serif; }
*{box-sizing:border-box} body{margin:0;background:#fff;color:var(--text);font-family:var(--font);-webkit-font-smoothing:antialiased}button,input,select{font:inherit}.hidden{display:none!important}
.account-topbar{height:76px;border-bottom:1px solid #eee;display:flex;align-items:center;justify-content:space-between;padding:0 34px;position:sticky;top:0;background:#fff;z-index:20}.account-brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:#28282e}.account-brand span{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:var(--primary);color:#fff;font-size:21px;font-weight:900;box-shadow:0 4px 12px rgba(234,29,44,.2)}.account-brand b{font-size:18px}.back-store{color:var(--primary);text-decoration:none;font-weight:800}
.account-layout{max-width:1380px;margin:0 auto;display:grid;grid-template-columns:270px minmax(0,1fr);gap:54px;padding:44px 36px 72px}.account-sidebar{border-right:1px solid #eee;padding-right:28px;min-height:620px}.account-profile{display:flex;align-items:center;gap:13px;padding:0 10px 24px;border-bottom:1px solid #eee}.profile-avatar{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;overflow:hidden;background:#fff0f1;color:var(--primary);font-size:20px;font-weight:900}.profile-avatar img{width:100%;height:100%;object-fit:cover}.account-profile div{min-width:0;display:flex;flex-direction:column}.account-profile small{font-size:13px;color:#777}.account-profile strong{font-size:20px;line-height:1.15}.account-profile span:not(.profile-avatar){font-size:11px;color:#999;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:155px}
.account-nav{display:grid;gap:5px;margin-top:18px}.account-nav button{width:100%;height:52px;border:0;border-radius:8px;background:transparent;color:#696969;display:flex;align-items:center;gap:14px;padding:0 14px;text-align:left;font-weight:700;cursor:pointer;transition:.18s}.account-nav button:hover{background:#fafafa;color:var(--primary);transform:translateX(2px)}.account-nav button.active{background:#fff3f4;color:var(--primary);font-weight:900}.account-nav button.logout{margin-top:16px;border-top:1px solid #eee;border-radius:0;padding-top:5px;height:58px}.account-nav svg{width:23px;height:23px;stroke:currentColor;fill:none;stroke-width:1.7;flex:0 0 auto}
.account-content{min-width:0}.account-section{display:none;animation:sectionIn .24s ease}.account-section.active{display:block}.section-heading{margin-bottom:26px}.section-heading p{margin:0 0 3px;color:var(--primary);font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.section-heading h1{margin:0 0 7px;font-size:31px;line-height:1.15}.section-heading span{color:#777}
.orders-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.order-card{border:1px solid #e9e9e9;border-radius:9px;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.03);overflow:hidden;transition:.2s}.order-card:hover{border-color:#ddd;box-shadow:0 10px 28px rgba(0,0,0,.07);transform:translateY(-2px)}.order-card-head{display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:12px;align-items:center;padding:16px 17px}.order-store-logo{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,#ff444f,#c70e1c);color:#fff;font-weight:900}.order-card-head h2{font-size:16px;margin:0 0 3px}.order-card-head p{margin:0;color:#777;font-size:13px}.order-status{padding:5px 9px;border-radius:999px;background:#f3f3f3;color:#555;font-size:11px;font-weight:900;white-space:nowrap}.order-status.new,.order-status.accepted,.order-status.preparing,.order-status.ready,.order-status.out_for_delivery{background:#fff2d6;color:#a66400}.order-status.completed{background:#eaf8ef;color:#237a46}.order-status.cancelled{background:#fff0f1;color:#c41625}.order-status.awaiting_payment{background:#eef4ff;color:#3462a4}.order-items{border-top:1px solid #eee;border-bottom:1px solid #eee;padding:13px 17px;display:grid;gap:8px;color:#686868;font-size:13px}.order-item{display:flex;gap:8px;align-items:flex-start}.order-item b{min-width:20px;height:20px;border-radius:4px;display:grid;place-items:center;background:#f3f3f3;color:#444;font-size:11px}.order-card-footer{padding:13px 17px;display:flex;align-items:center;justify-content:space-between;gap:12px}.order-total small{display:block;color:#888;font-size:11px}.order-total strong{font-size:16px}.order-details-btn{border:0;background:transparent;color:var(--primary);font-weight:900;cursor:pointer}.order-extra{display:none;padding:0 17px 16px;color:#666;font-size:13px;line-height:1.6}.order-card.expanded .order-extra{display:block}.order-extra dl{margin:0;padding:12px;background:#fafafa;border-radius:7px}.order-extra dt{font-weight:900;color:#444}.order-extra dd{margin:0 0 7px}.orders-state{min-height:240px;border:1px dashed #ddd;border-radius:10px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;color:#777;text-align:center;padding:30px}.orders-state b{color:#333;font-size:18px}.orders-state a,.orders-state button{margin-top:8px;border:0;border-radius:6px;background:var(--primary);color:#fff;text-decoration:none;padding:11px 18px;font-weight:900;cursor:pointer}.orders-state.error{border-color:#ffc7cc;background:#fffafa}.spinner{width:28px;height:28px;border:3px solid #eee;border-top-color:var(--primary);border-radius:50%;animation:spin .75s linear infinite;margin-bottom:8px}
.payment-overview{display:grid;grid-template-columns:310px minmax(0,1fr);gap:34px;align-items:center;border:1px solid #e8e8e8;border-radius:12px;padding:30px;background:linear-gradient(135deg,#fff,#fafafa)}.payment-visual{height:174px;border-radius:16px;padding:24px;color:#fff;background:linear-gradient(135deg,#25252b,#4a4a54);box-shadow:0 18px 35px rgba(28,28,33,.2);display:flex;flex-direction:column;justify-content:space-between}.payment-visual span{width:43px;height:31px;border-radius:6px;background:linear-gradient(135deg,#f7d57d,#ba8b28)}.payment-visual b{font-size:21px;letter-spacing:.13em}.payment-visual small{color:#ddd}.payment-overview h2{margin:0 0 8px}.payment-overview p{margin:0 0 19px;color:#737373;line-height:1.55}.payment-overview button{min-height:47px;border:0;border-radius:7px;padding:0 20px;background:var(--primary);color:#fff;font-weight:900;cursor:pointer}.payment-overview button:hover{background:var(--primary-dark)}.security-note{margin-top:18px;padding:17px 19px;border-radius:9px;background:#f7faf8;display:flex;gap:12px;align-items:center;color:#597064}.security-note b{color:#2e6948}.security-note span{font-size:13px}
@keyframes spin{to{transform:rotate(360deg)}}@keyframes sectionIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@media(max-width:900px){.account-layout{grid-template-columns:1fr;gap:25px;padding:25px 18px}.account-sidebar{border-right:0;border-bottom:1px solid #eee;min-height:0;padding:0 0 18px}.account-nav{grid-template-columns:1fr 1fr auto}.account-nav button.logout{margin:0;border:0;border-radius:8px;padding:0 14px;height:52px}.orders-grid{grid-template-columns:1fr}.payment-overview{grid-template-columns:1fr}.payment-visual{max-width:340px}}
@media(max-width:600px){.account-topbar{padding:0 16px}.account-brand b{display:none}.account-layout{padding-left:12px;padding-right:12px}.account-profile{padding-left:4px}.account-nav{grid-template-columns:1fr}.account-nav button.logout{margin-top:4px;border-top:1px solid #eee}.order-card-head{grid-template-columns:42px minmax(0,1fr)}.order-store-logo{width:42px;height:42px}.order-status{grid-column:2;justify-self:start}.payment-overview{padding:20px}.security-note{align-items:flex-start}}

.order-item span small {
  display: block;
  margin-top: 3px;
  color: #999;
  font-size: 11px;
  line-height: 1.35;
}

/* Área do cliente: endereços e dados */
.section-heading-row{display:flex;align-items:flex-end;justify-content:space-between;gap:24px}.section-heading-row .account-primary-button{flex:0 0 auto}
.account-primary-button,.account-secondary-button{min-height:46px;border-radius:8px;padding:0 18px;font-weight:900;cursor:pointer;transition:.18s ease}.account-primary-button{border:1px solid var(--primary);background:var(--primary);color:#fff}.account-primary-button:hover{background:var(--primary-dark);border-color:var(--primary-dark);transform:translateY(-1px)}.account-primary-button:disabled,.account-secondary-button:disabled{opacity:.55;cursor:not-allowed;transform:none}.account-secondary-button{border:1px solid #ddd;background:#fff;color:#444}.account-secondary-button:hover{border-color:#ffb9bf;color:var(--primary);background:#fff8f8}
.profile-state{min-height:230px;border:1px dashed #ddd;border-radius:12px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:#777;text-align:center;padding:30px}.profile-state b{font-size:19px;color:#333}.profile-state button{margin-top:8px;min-height:44px;padding:0 18px;border:0;border-radius:8px;background:var(--primary);color:#fff;font-weight:900;cursor:pointer}
.addresses-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.address-card{position:relative;border:1px solid #e7e7e7;border-radius:12px;padding:19px;background:#fff;transition:.2s ease;overflow:hidden}.address-card:hover{border-color:#d8d8d8;box-shadow:0 12px 30px rgba(0,0,0,.07);transform:translateY(-2px)}.address-card.is-default{border-color:#ffc6cb;background:linear-gradient(145deg,#fff,#fff9f9)}.address-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.address-card-title{display:flex;align-items:center;gap:10px}.address-card-icon{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:#fff1f2;color:var(--primary);font-size:20px}.address-card h2{margin:0;font-size:18px}.address-card .default-badge{display:inline-flex;margin-top:4px;padding:3px 8px;border-radius:999px;background:#fff0f1;color:var(--primary);font-size:10px;font-weight:900}.address-card address{font-style:normal;color:#65656b;line-height:1.5;margin:16px 0 12px}.address-card address strong{display:block;color:#333}.address-card-meta{display:flex;gap:12px;flex-wrap:wrap;color:#888;font-size:12px}.address-card-actions{display:flex;align-items:center;gap:10px;border-top:1px solid #eee;margin-top:16px;padding-top:14px}.address-card-actions button{border:0;background:transparent;color:#666;font-weight:900;cursor:pointer;padding:5px 0}.address-card-actions button:hover{color:var(--primary)}.address-card-actions .make-default{margin-left:auto;color:var(--primary)}.address-card-actions .delete-address:hover{color:#b20f1b}
.account-feedback{min-height:20px;margin:12px 0 0;color:#777;font-size:13px;font-weight:800}.account-feedback.success{color:#25804d}.account-feedback.error{color:#c51827}
.profile-form{display:grid;gap:16px}.profile-form-card{border:1px solid #e8e8e8;border-radius:12px;background:#fff;padding:22px}.profile-form-card>header{display:flex;align-items:center;gap:14px;border-bottom:1px solid #eee;padding-bottom:17px;margin-bottom:18px}.profile-form-card>header>span{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:#fff1f2;color:var(--primary);font-weight:900}.profile-form-card h2,.profile-form-card p{margin:0}.profile-form-card h2{font-size:18px}.profile-form-card p{color:#888;font-size:13px;margin-top:2px}.profile-fields{display:grid;gap:16px}.profile-fields.two{grid-template-columns:repeat(2,minmax(0,1fr))}.profile-fields label,.address-form-grid label{display:grid;gap:7px;color:#555;font-size:13px;font-weight:800}.profile-fields input,.address-form-grid input{width:100%;height:48px;border:1px solid #ddd;border-radius:8px;padding:0 13px;background:#fff;color:#333;outline:none;transition:.18s}.profile-fields input:focus,.address-form-grid input:focus{border-color:#f5747d;box-shadow:0 0 0 3px rgba(234,29,44,.08)}.profile-fields input[readonly],.address-form-grid input[readonly]{background:#f7f7f7;color:#777}.credentials-row{display:flex;align-items:center;justify-content:space-between;gap:20px}.credentials-row div{display:grid;gap:3px}.credentials-row span{color:#888;font-size:13px}.profile-actions{display:flex;align-items:center;justify-content:space-between;gap:18px;padding-top:4px}.profile-actions .account-feedback{margin:0;flex:1}
.address-dialog{width:min(760px,calc(100vw - 24px));max-height:calc(100vh - 30px);padding:0;border:0;border-radius:14px;box-shadow:0 28px 80px rgba(0,0,0,.25);overflow:auto}.address-dialog::backdrop{background:rgba(20,20,24,.55);backdrop-filter:blur(2px)}.address-dialog-shell{padding:0;margin:0}.address-dialog-header{position:sticky;top:0;z-index:3;display:flex;align-items:center;justify-content:space-between;background:#fff;border-bottom:1px solid #eee;padding:19px 22px}.address-dialog-header p,.address-dialog-header h2{margin:0}.address-dialog-header p{color:var(--primary);font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.07em}.address-dialog-header h2{font-size:23px}.address-dialog-header button{width:40px;height:40px;border:0;border-radius:50%;background:#f6f6f6;cursor:pointer;font-size:18px}.address-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:22px}.address-form-grid .wide{grid-column:span 2}.address-verify-row{display:flex;align-items:center;gap:16px;padding:0 22px 18px}.address-verify-row p{margin:0;color:#777;font-size:13px;font-weight:800}.address-verify-row p.success{color:#25804d}.address-verify-row p.error{color:#c51827}.saved-address-map{margin:0 22px 18px;border:1px solid #e5e5e5;border-radius:10px;overflow:hidden}.saved-address-map>div{height:230px}.saved-address-map label{display:flex;align-items:center;gap:9px;padding:13px 15px;background:#fafafa;font-size:13px;font-weight:800}.default-address-check{display:flex;align-items:center;gap:9px;margin:0 22px 18px;color:#555;font-weight:800;font-size:13px}.address-dialog-actions{position:sticky;bottom:0;display:flex;justify-content:flex-end;gap:11px;padding:16px 22px;border-top:1px solid #eee;background:#fff}
.account-toast{position:fixed;left:50%;bottom:22px;z-index:500;background:#2d2d32;color:#fff;border-radius:9px;padding:12px 18px;font-weight:800;opacity:0;transform:translate(-50%,25px);pointer-events:none;transition:.25s ease}.account-toast.show{opacity:1;transform:translate(-50%,0)}
@media(max-width:900px){.account-nav{grid-template-columns:repeat(2,minmax(0,1fr))}.account-nav button.logout{grid-column:span 2}.addresses-grid{grid-template-columns:1fr}.section-heading-row{align-items:flex-start;flex-direction:column}.profile-fields.two{grid-template-columns:1fr}}
@media(max-width:600px){.account-nav{grid-template-columns:1fr}.account-nav button.logout{grid-column:auto}.address-form-grid{grid-template-columns:1fr;padding:18px 16px}.address-form-grid .wide{grid-column:auto}.address-dialog-header,.address-dialog-actions{padding-left:16px;padding-right:16px}.address-verify-row{align-items:stretch;flex-direction:column;padding-left:16px;padding-right:16px}.saved-address-map{margin-left:16px;margin-right:16px}.default-address-check{margin-left:16px;margin-right:16px}.credentials-row,.profile-actions{align-items:stretch;flex-direction:column}.profile-actions .account-primary-button{width:100%}.section-heading-row .account-primary-button{width:100%}}
