/* Loja RealMove — camada adicional sobre o site institucional */
.notice-bar{position:fixed;top:5rem;left:0;width:100%;z-index:99;padding:.65rem 1rem;text-align:center;background:var(--lime);color:var(--black);font-size:.84rem;font-weight:800}.shop-section{background:#fff}.shop-intro{display:grid;grid-template-columns:1fr .8fr;gap:3rem;align-items:end;margin-bottom:3rem}.shop-intro p{color:var(--muted)}.shop-step{padding:2rem 0;border-top:1px solid var(--line)}.shop-step-head{display:flex;justify-content:space-between;gap:2rem;align-items:end;margin-bottom:1.2rem}.shop-step-number{display:inline-grid;place-items:center;width:2.4rem;height:2.4rem;border-radius:50%;background:var(--black);color:#fff;font-size:.8rem;font-weight:900}.shop-choice-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:.8rem}.shop-choice-grid.sizes{grid-template-columns:repeat(3,1fr)}.shop-choice{min-height:8.5rem;padding:1rem;text-align:left;border:1px solid var(--line);border-radius:1rem;background:var(--paper);cursor:pointer;transition:.2s}.shop-choice:hover{transform:translateY(-2px);border-color:var(--black)}.shop-choice.active{background:var(--black);color:#fff;border-color:var(--black)}.shop-choice strong,.shop-choice small{display:block}.shop-choice strong{margin:.35rem 0;font-size:1.05rem}.shop-choice small{opacity:.72}.choice-kicker{font-size:.68rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase;color:var(--blue)}.shop-choice.active .choice-kicker{color:var(--lime)}.builder-layout{display:grid;grid-template-columns:minmax(0,1fr) 21rem;gap:2rem;align-items:start}.builder-main{min-width:0}.builder-summary{position:sticky;top:6.5rem;padding:1.2rem;border:1px solid var(--line);border-radius:1.2rem;background:var(--black);color:#fff}.summary-top span,.summary-top strong{display:block}.summary-top span{font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;color:var(--lime);font-weight:900}.summary-lines{margin:1rem 0;padding:1rem 0;border-top:1px solid #333;border-bottom:1px solid #333}.summary-lines>div{display:flex;justify-content:space-between;gap:1rem;margin:.55rem 0;color:#ccc;font-size:.85rem}.summary-total{display:grid}.summary-total span{font-size:.8rem;color:#aaa}.summary-total strong{font-size:2rem;line-height:1.1}.summary-total small{margin-top:.2rem;color:#aaa}.builder-summary .button{width:100%;margin-top:1rem}.builder-summary button:disabled{opacity:.45;cursor:not-allowed;transform:none}.progress-wrap{margin-bottom:1rem}.progress-meta{display:flex;justify-content:space-between;gap:1rem;font-weight:800}.progress-track{height:.55rem;margin:.65rem 0;background:#ddd;border-radius:999px;overflow:hidden}.progress-track i{display:block;height:100%;width:0;background:var(--blue);transition:width .2s}.progress-wrap small{color:var(--muted)}.dish-line{margin:2.5rem 0}.dish-line-head{display:flex;justify-content:space-between;gap:1rem;align-items:end;margin-bottom:1rem}.dish-line-head h3{margin:0;font-size:2rem}.dish-line-head>strong{font-size:.85rem}.dish-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}.dish-card{display:grid;grid-template-columns:5.5rem 1fr;border:1px solid var(--line);border-radius:1rem;overflow:hidden;background:#fff}.dish-placeholder{display:grid;place-items:center;min-height:10rem;background:linear-gradient(145deg,#111,#272727);color:#fff}.dish-placeholder span{writing-mode:vertical-rl;transform:rotate(180deg);font-size:.7rem;font-weight:900;letter-spacing:.12em}.dish-content{padding:1rem}.dish-title-row{display:flex;justify-content:space-between;gap:.75rem}.dish-content h4{margin:0;font-size:1rem}.dish-content p{margin:.5rem 0 1rem;color:var(--muted);font-size:.82rem}.dish-footer{display:flex;justify-content:space-between;align-items:center;gap:.8rem;font-size:.82rem;font-weight:900}.line-pill{flex:none;padding:.25rem .45rem;border-radius:999px;background:#eee;font-size:.62rem}.line-realplus{background:#e8f0ff;color:#003fbf}.line-move{background:#eef8d0;color:#344800}.line-realmove{background:#111;color:#fff}.qty-control{display:flex;align-items:center;border:1px solid var(--line);border-radius:999px;overflow:hidden}.qty-control button{width:2rem;height:2rem;border:0;background:var(--paper);font-size:1.1rem;cursor:pointer}.qty-control button:disabled{opacity:.25}.qty-control b{min-width:1.6rem;text-align:center}.shop-empty{padding:2rem;border:1px dashed var(--line);border-radius:1rem;color:var(--muted);text-align:center}.shop-policy-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:2rem}.policy-card{padding:1.2rem;border-radius:1rem;background:var(--paper)}.policy-card strong{display:block;margin-bottom:.4rem}.checkout-panel{position:fixed;z-index:300;inset:0;background:rgba(0,0,0,.78);overflow:auto;padding:2rem}.checkout-card{width:min(980px,100%);margin:2rem auto;background:#fff;border-radius:1.2rem;overflow:hidden}.checkout-head{display:flex;justify-content:space-between;align-items:center;padding:1.2rem 1.5rem;background:var(--black);color:#fff}.checkout-head h2{margin:0;font-size:1.8rem}.checkout-head button{border:0;background:transparent;color:#fff;font-size:2rem;cursor:pointer}.checkout-grid{display:grid;grid-template-columns:.85fr 1.15fr}.checkout-review{padding:1.5rem;background:var(--paper)}.checkout-review ul{padding:0;margin:1rem 0;list-style:none}.checkout-review li{display:flex;justify-content:space-between;gap:1rem;padding:.55rem 0;border-bottom:1px solid var(--line);font-size:.84rem}.checkout-review li small{color:var(--muted)}.review-total{display:flex;justify-content:space-between;margin-top:1rem;font-size:1.05rem}.checkout-form{padding:1.5rem}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:.8rem}.form-field{display:grid;gap:.3rem}.form-field.full{grid-column:1/-1}.form-field label{font-size:.75rem;font-weight:900}.form-field input,.form-field textarea,.form-field select{width:100%;padding:.8rem;border:1px solid var(--line);border-radius:.65rem;background:#fff;font:inherit}.form-field textarea{min-height:5rem;resize:vertical}.coupon-row{display:grid;grid-template-columns:1fr auto;gap:.5rem;margin:1rem 0}.coupon-row input{padding:.8rem;border:1px solid var(--line);border-radius:.65rem}.coupon-row button{border:0;border-radius:.65rem;padding:.75rem 1rem;background:var(--black);color:#fff;font-weight:900}.payment-hold{padding:1rem;margin:1rem 0;border-left:4px solid var(--blue);background:#eef4ff;font-size:.84rem}.terms-check{display:flex;gap:.65rem;align-items:flex-start;margin:1rem 0;font-size:.8rem}.form-message{margin:.6rem 0;font-size:.82rem;font-weight:800}.form-message.success{color:#236c00}.form-message.error{color:#ad1b1b}.checkout-submit{width:100%;border:0}.small-note{font-size:.76rem;color:var(--muted)}.admin-link{font-size:.72rem;opacity:.45;text-decoration:none}.policy-links{display:flex;flex-wrap:wrap;gap:1rem;margin-top:1rem;font-size:.75rem}.policy-links a{text-underline-offset:.2rem}
@media(max-width:980px){.shop-intro,.builder-layout,.checkout-grid{grid-template-columns:1fr}.builder-summary{position:relative;top:auto;order:-1}.shop-choice-grid{grid-template-columns:repeat(3,1fr)}.shop-policy-grid{grid-template-columns:1fr}.checkout-panel{padding:.5rem}}
@media(max-width:640px){.shop-choice-grid,.shop-choice-grid.sizes,.dish-grid,.form-grid{grid-template-columns:1fr}.dish-card{grid-template-columns:4.2rem 1fr}.shop-step-head,.dish-line-head{align-items:flex-start;flex-direction:column}.checkout-card{margin:.5rem auto}.checkout-form,.checkout-review{padding:1rem}}

/* Modal legal: mantém o cliente na mesma página */
.legal-modal{position:fixed;inset:0;z-index:1001;display:grid;place-items:center;padding:1rem;background:rgba(0,0,0,.68);backdrop-filter:blur(4px)}
.legal-modal[hidden]{display:none}
.legal-modal-card{width:min(760px,100%);max-height:min(82vh,760px);overflow:auto;background:#fff;border-radius:1.25rem;box-shadow:0 24px 80px rgba(0,0,0,.28)}
.legal-modal-head{position:sticky;top:0;display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:1.35rem 1.5rem 1rem;background:#fff;border-bottom:1px solid var(--line);z-index:2}
.legal-modal-head .eyebrow{margin:0 0 .25rem}
.legal-modal-head h2{margin:0;color:#111;font-size:clamp(1.65rem,4vw,2.5rem)}
.legal-modal-head button{display:grid;place-items:center;width:2.5rem;height:2.5rem;flex:none;border:1px solid var(--line);border-radius:50%;background:#fff;font-size:1.5rem;cursor:pointer}
.legal-modal-body{padding:1.5rem;color:#333}
.legal-modal-body h3{margin:1.35rem 0 .35rem;color:#111}
.legal-modal-body p{margin:.5rem 0 1rem;line-height:1.7}
body.legal-open{overflow:hidden}


/* Conta do cliente e autenticação */
.nav-account{border:0;background:transparent;color:inherit;font:inherit;font-weight:700;cursor:pointer;padding:.45rem .2rem}
.account-modal{position:fixed;inset:0;z-index:1002;display:grid;place-items:center;padding:1rem;background:rgba(0,0,0,.72);backdrop-filter:blur(4px)}
.account-modal[hidden]{display:none}.account-card{width:min(620px,100%);max-height:88vh;overflow:auto;background:#fff;border-radius:1.25rem;box-shadow:0 24px 80px rgba(0,0,0,.3)}
.account-head{position:sticky;top:0;z-index:2;display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;padding:1.25rem 1.4rem;background:#fff;border-bottom:1px solid var(--line)}
.account-head h2{margin:0;color:#111}.account-head button{display:grid;place-items:center;width:2.5rem;height:2.5rem;border:1px solid var(--line);border-radius:50%;background:#fff;font-size:1.5rem;cursor:pointer}.account-body{padding:1.4rem}.account-tabs{display:grid;grid-template-columns:1fr 1fr;gap:.5rem;margin-bottom:1rem}.account-tabs button{padding:.75rem;border:1px solid var(--line);border-radius:.7rem;background:#fff;font-weight:900;cursor:pointer}.account-tabs button.active{background:#111;color:#fff;border-color:#111}.account-form{display:grid;gap:.8rem}.account-form label{display:grid;gap:.3rem;font-size:.78rem;font-weight:900}.account-form input{width:100%;padding:.82rem;border:1px solid var(--line);border-radius:.65rem;font:inherit}.account-profile{display:grid;gap:.25rem;padding:1rem;margin-bottom:1.2rem;border-radius:.9rem;background:var(--paper)}.account-profile strong{font-size:1.15rem}.account-profile span{font-size:.82rem;color:var(--muted)}.account-orders{display:grid;gap:.65rem;margin:1rem 0}.account-order{display:flex;justify-content:space-between;gap:1rem;align-items:center;padding:.85rem;border:1px solid var(--line);border-radius:.8rem}.account-order div{display:grid;gap:.2rem}.account-order span,.account-order small{font-size:.75rem;color:var(--muted)}.account-order button{border:0;border-radius:999px;padding:.5rem .75rem;background:#111;color:#fff;font-weight:800;cursor:pointer}.account-actions{display:flex;flex-wrap:wrap;gap:.6rem}.button-ghost-dark{border:1px solid #111;background:#fff;color:#111}.checkout-account{display:grid;gap:.15rem;margin-bottom:1rem;padding:.9rem;border-radius:.8rem;background:#eef4ff}.checkout-account span{font-size:.78rem;color:#555}body.account-open{overflow:hidden}
.account-page{min-height:100vh;background:#ecece5}.setup-shell{min-height:100vh;display:grid;place-items:center;padding:2rem}.setup-card{width:min(520px,100%);padding:2rem;background:#fff;border-radius:1.2rem}.setup-logo{width:150px;height:auto;margin-bottom:1.5rem}.setup-card h1{color:#111;margin:.2rem 0 1rem}
@media(max-width:640px){.account-order{align-items:flex-start;flex-direction:column}.account-order button{width:100%}.nav-account{text-align:left;width:100%}}

/* Conta v4: modal mais estável e organizado */
.account-card{width:min(700px,100%);border:1px solid rgba(255,255,255,.14)}
.account-body{padding:1.6rem}.account-welcome{padding:1rem 1.1rem;margin-bottom:1rem;border-radius:.9rem;background:linear-gradient(135deg,#f3f6ef,#eef4ff)}.account-welcome strong{display:block;font-size:1.05rem}.account-welcome p{margin:.35rem 0 0;color:var(--muted);font-size:.82rem;line-height:1.55}.account-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:.8rem}.account-privacy-note{display:grid;gap:.2rem;padding:.85rem;border-radius:.75rem;background:var(--paper);font-size:.76rem;color:var(--muted)}.account-privacy-note strong{color:#111}.account-cancel{width:100%;margin-top:.8rem;padding:.65rem;border:0;background:transparent;color:var(--muted);font-weight:800;cursor:pointer;text-decoration:underline;text-underline-offset:.2rem}.account-order-actions{display:flex;gap:.4rem;flex-wrap:wrap}.account-order .history-delete{background:#fff;color:#8e1a1a;border:1px solid #d9b2b2}
@media(max-width:640px){.account-form-grid{grid-template-columns:1fr}.account-body{padding:1rem}}

/* Conta v7 — login e cadastro separados */
.account-card{width:min(860px,100%)}
.account-auth-shell{display:grid;grid-template-columns:minmax(220px,.78fr) minmax(0,1.22fr);min-height:430px;border:1px solid var(--line);border-radius:1rem;overflow:hidden;background:#fff}
.account-auth-side{padding:2rem 1.6rem;background:linear-gradient(145deg,#101310,#252a22);color:#fff;display:flex;flex-direction:column;justify-content:center}
.account-auth-kicker{font-size:.72rem;font-weight:900;letter-spacing:.14em;text-transform:uppercase;color:#cfd9bf}
.account-auth-side h3{margin:.65rem 0 .75rem;color:#fff;font-size:1.55rem;line-height:1.15}.account-auth-side p{margin:0;color:#d8ddd4;font-size:.86rem;line-height:1.6}
.account-auth-side ul{margin:1.1rem 0 0;padding:0;list-style:none;display:grid;gap:.55rem;font-size:.8rem;color:#eef2e9}.account-auth-side li::before{content:'✓';margin-right:.55rem;color:#bcd497;font-weight:900}
.account-auth-main{padding:1.45rem 1.5rem 1.25rem;display:flex;flex-direction:column}.account-tabs{padding:.3rem;background:#f1f1ec;border-radius:.85rem;margin-bottom:1.35rem}.account-tabs button{border:0;background:transparent;border-radius:.65rem;color:#5b5e57}.account-tabs button.active{background:#fff;color:#111;box-shadow:0 2px 10px rgba(0,0,0,.08)}
.account-pane-head{margin-bottom:1rem}.account-pane-head h3{margin:0;color:#111;font-size:1.35rem}.account-pane-head p{margin:.35rem 0 0;color:var(--muted);font-size:.82rem;line-height:1.5}.account-form{gap:.9rem}.account-form input{padding:.9rem .95rem;background:#fff}.account-submit{width:100%;margin-top:.1rem}
.account-switch{text-align:center;margin:1rem 0 0;color:var(--muted);font-size:.8rem}.account-switch button{border:0;background:transparent;padding:0;color:#111;font-weight:900;cursor:pointer;text-decoration:underline;text-underline-offset:.18rem}.account-cancel{margin-top:1rem;text-decoration:none}
@media(max-width:720px){.account-card{width:min(560px,100%)}.account-auth-shell{grid-template-columns:1fr}.account-auth-side{padding:1.2rem 1.15rem}.account-auth-side ul{display:none}.account-auth-side h3{font-size:1.2rem}.account-auth-main{padding:1.15rem}.account-modal{align-items:start;overflow:auto}.account-card{margin:auto 0;max-height:none}.account-head{position:relative}}

/* Recuperação de senha: esconder a navegação durante a solicitação */
.account-tabs[hidden],.account-pane[hidden]{display:none!important}
