/* Complementos da área de conta e do painel admin. Reusa variáveis de styles.css. */
/* Grids com coluna minmax(0, 1fr) e filhos min-width: 0: conteúdo largo (tabelas, selects, e-mails)
   não pode alargar a página; tabelas rolam dentro de .table-scroll. */
.account { max-width: 1100px; margin: 0 auto; padding: 1.25rem; display: grid; gap: 1.25rem; grid-template-columns: minmax(0, 1fr); }
.account > *, .account .card, .account form, .account section { min-width: 0; max-width: 100%; }
.account h2, .account h3, .account p, .account td, .account th, .banner, .msg { overflow-wrap: anywhere; }
.account .table-scroll { max-width: 100%; overflow-x: auto; -webkit-overflow-scrolling: touch; }
.account .table td, .account .table th { overflow-wrap: normal; }
.account select, .account input, .account textarea { max-width: 100%; min-width: 0; }
.account .btn { white-space: normal; text-align: center; max-width: 100%; }
@media (max-width: 480px) { .account { padding: .75rem; } .account .card { padding: 1rem; } }
.topnav a { color: #fff; font-weight: 600; }
.msg { min-height: 1.4em; margin: 0; font-weight: 600; }
.msg--erro { color: var(--perigo); }
.msg--ok { color: var(--ok); }

.auth-grid { display: grid; gap: 1.25rem; grid-template-columns: minmax(0, 1fr); }
@media (min-width: 760px) { .auth-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }

.form-grid { display: grid; gap: 0 1rem; grid-template-columns: minmax(0, 1fr); }
.form-grid > * { min-width: 0; }
@media (min-width: 640px) { .form-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 900px) { .form-grid--4 { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
.form-grid .span-all { grid-column: 1 / -1; }

.input-plain {
  font: inherit; padding: .55rem .65rem; border: 1px solid var(--borda); border-radius: 8px; background: #fff; color: inherit; width: 100%;
}
.input-plain:focus { outline: 3px solid rgba(124, 58, 237, .3); border-color: var(--roxo); }

.stats { display: grid; gap: .75rem; grid-template-columns: repeat(auto-fit, minmax(min(150px, 100%), 1fr)); }
.stat { background: var(--roxo-claro); border-radius: 10px; padding: .75rem 1rem; min-width: 0; }
.stat__label { display: block; font-size: .82rem; color: var(--texto-suave); font-weight: 600; }
.stat__value { font-size: 1.3rem; font-weight: 800; color: var(--grafite); }

.pill { display: inline-block; font-size: .75rem; font-weight: 700; padding: .1rem .5rem; border-radius: 999px; background: var(--fundo); border: 1px solid var(--borda); }
.pill--sim { background: var(--aviso-fundo); border-color: #d18a00; color: #5c3800; }
.pill--ok { background: var(--ok-fundo); border-color: var(--ok); color: #0d4f30; }
.pill--erro { background: var(--perigo-fundo); border-color: var(--perigo); color: #7a1610; }

/* Mobile: ingrediente na linha inteira; quantidade, unidade e remover abaixo. */
.item-row { display: grid; gap: .5rem; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) auto; align-items: end; margin-bottom: .5rem; }
.item-row > * { min-width: 0; }
.item-row .rc-ing { grid-column: 1 / -1; }
@media (min-width: 640px) {
  .item-row { grid-template-columns: minmax(0, 2fr) minmax(0, 1fr) minmax(0, 1fr) auto; }
  .item-row .rc-ing { grid-column: auto; }
}
.item-row select { padding: .55rem .5rem; }
.btn-row { display: flex; flex-wrap: wrap; gap: .5rem; align-items: center; }
.btn-row--between { justify-content: space-between; }
.btn-row > * { min-width: 0; }
.preview { border: 2px dashed var(--roxo); border-radius: 10px; padding: 1rem; min-width: 0; }
.topbar__inner { min-width: 0; }
.topnav { min-width: 0; }
.table td .btn { padding: .3rem .6rem; font-size: .85rem; }

/* Espaces Essencial/Gestão: navigation does not rebuild forms or discard drafts. */
[hidden]{display:none!important}.account{max-width:1200px;padding:24px;gap:16px}.local-notice{display:flex;gap:10px 18px;align-items:center;flex-wrap:wrap;font-size:12px;color:#62566f;border:1px solid #ded4e9;background:#f0ebf6;border-radius:9px;padding:12px 16px}.local-notice strong{color:#6c36a2}.local-notice details{margin-left:auto}.local-notice summary{cursor:pointer;text-decoration:underline;text-underline-offset:3px}.local-notice details p{max-width:650px;margin:10px 0 0}.msg:empty{display:none}.msg:not(:empty){padding:12px 16px;background:#fff;border:1px solid var(--borda);border-radius:8px}.workspace-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:16px 0 24px}.workspace-heading h1{font-size:32px;letter-spacing:-1px}.workspace-kicker{font-size:10px;letter-spacing:1.6px;font-weight:750;color:#79519d;margin:0 0 10px}.account-identity{font-size:13px;color:#71697c;margin:4px 0 0}.account-nav{display:flex;gap:6px;background:#e9e5ef;padding:5px;border-radius:12px;margin-bottom:24px}.account-nav button{border:0;background:transparent;border-radius:8px;padding:13px 18px;font:600 14px/1.4 system-ui;cursor:pointer;color:#6a6176;display:flex;align-items:center;gap:12px}.account-nav button span{font-size:11px;background:#dad4e2;border-radius:20px;padding:2px 8px;color:#55485f}.account-nav button[aria-current=page]{background:#fff;color:#6e29b7;box-shadow:0 2px 6px #2c164012}.account-nav button[aria-current=page] span{background:#f0e3ff;color:#7537a8}.account-nav button:focus-visible,.catalog-nav button:focus-visible{outline:3px solid #a875ed;outline-offset:2px}.product-hero{display:grid;grid-template-columns:minmax(0,1fr) 190px;gap:40px;padding:32px;background:linear-gradient(120deg,#211927,#34213e);color:#e3d9ea;border-radius:16px;margin-bottom:20px}.product-hero h2{font-size:28px;letter-spacing:-.7px;color:#fff;max-width:600px;margin-bottom:14px}.product-hero p:not(.workspace-kicker){font-size:14px;max-width:630px;line-height:1.7}.product-hero .workspace-kicker{color:#caa4f7}.product-hero .product-link{background:transparent;color:#ebdcff;border-color:#66506f}.credit-balance{border-left:1px solid #695273;padding-left:30px;display:flex;flex-direction:column;justify-content:center}.credit-balance>span{font-size:12px}.credit-balance strong{font-size:60px;line-height:1.25;color:#d1a4ff}.credit-balance small{font-size:11px;line-height:1.6}.workflow-steps{display:flex;gap:24px;padding:4px 5px 24px;font-size:12px;color:#696171;flex-wrap:wrap}.workflow-steps b{display:inline-flex;width:24px;height:24px;justify-content:center;align-items:center;border-radius:50%;background:#e8dcf8;color:#723ea7;margin-right:6px}.section-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;margin-bottom:14px}.section-heading h3,.section-heading h2{margin:0}.section-heading h3{font-size:20px;letter-spacing:-.3px}.prepare-card .field{max-width:530px}.account [data-account-panel]>.card{margin-bottom:20px;padding:26px}.document-library .hint{margin-bottom:0}.empty-state{padding:30px 22px;border:1px dashed #d6c8e5;border-radius:10px;background:#faf7fe;margin:18px 0}.empty-state strong{font-size:16px;color:#51405f}.empty-state p{font-size:14px;color:#756580;max-width:640px;margin:8px 0 0}.catalog-counts{display:flex;gap:26px;align-items:center}.catalog-counts div{display:flex;flex-direction:column}.catalog-counts strong{font-size:38px;color:#dcbbff}.catalog-counts span{font-size:12px}.catalog-nav{display:flex;border-bottom:1px solid #dcd5e3;gap:20px;margin-bottom:20px;overflow-x:auto}.catalog-nav button{white-space:nowrap;background:transparent;border:0;border-bottom:3px solid transparent;padding:12px 2px;font:600 14px system-ui;color:#776e80;cursor:pointer}.catalog-nav button[aria-current=page]{color:#7734b7;border-bottom-color:#8b42d2}.product-note{font-size:12px;color:#74677e;margin:0 0 14px}.editor{border-top:1px solid #e3dbe9;margin-top:24px;padding-top:18px}.editor summary{cursor:pointer;color:#7e3fbb;font-weight:650;font-size:14px}.editor form{margin-top:22px}.plan-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:20px}.plan-grid h3{font-size:24px}.plan-grid p{font-size:14px;color:#6c6275;line-height:1.7}.history-card h3{margin-top:24px}.history-card h3:first-child{margin-top:0}.preview{margin-top:22px;background:#faf7ff;border-style:solid;border-color:#c9a6eb}.credit-hint{padding:12px;background:#f6f0fc;border-radius:8px}.table td:first-child{font-weight:600}.access-note h3{margin-top:0}.gestao-hero{grid-template-columns:minmax(0,1fr) auto}@media(max-width:700px){.account{padding:16px}.workspace-heading{margin:8px 0 20px}.workspace-heading h1{font-size:26px}.workspace-kicker{font-size:9px}.account-nav{gap:3px}.account-nav button{flex:1;justify-content:center;flex-direction:column;gap:5px;padding:10px 7px;font-size:12px}.account-nav button span{font-size:10px}.product-hero,.gestao-hero{grid-template-columns:minmax(0,1fr);gap:22px;padding:24px}.product-hero h2{font-size:25px}.credit-balance{border-left:0;border-top:1px solid #695273;padding:18px 0 0;display:grid;grid-template-columns:1fr auto;gap:4px 20px}.credit-balance strong{grid-column:2;grid-row:1/3;font-size:48px}.catalog-counts{gap:35px}.catalog-counts strong{font-size:30px}.workflow-steps{flex-direction:column;gap:10px}.plan-grid{grid-template-columns:minmax(0,1fr)}.local-notice details{margin-left:0}.account [data-account-panel]>.card{padding:18px}.section-heading h3{font-size:19px}.catalog-nav{gap:16px}.catalog-nav button{font-size:12px}.empty-state{padding:22px 16px}} 

.auth-intro{max-width:720px;margin:30px 0 24px}.auth-intro h1{font-size:clamp(26px,4vw,38px);line-height:1.15;margin-bottom:12px}.auth-intro p{color:#605969;line-height:1.7}.auth-grid{align-items:start}.auth-grid .card{min-width:0}.auth-grid .btn{min-height:44px}.auth-grid input{min-height:44px}#form-reset{max-width:620px;margin:24px auto}.table th{text-align:left}.table-scroll{max-width:100%;overflow:auto}.table-scroll:focus-visible{outline:3px solid #a865ed}@media(max-width:600px){.auth-grid{grid-template-columns:minmax(0,1fr)}.auth-grid .btn{width:100%}.account{padding-left:16px;padding-right:16px}}

/* Acesso: um formulário por etapa, com identidade comum ao produto. */
.auth-shell{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1fr);max-width:1000px;margin:28px auto 44px;border:1px solid #ded8e6;border-radius:22px;overflow:hidden;background:#fff;box-shadow:0 22px 65px #2413350c;min-height:580px}.auth-story{padding:48px 42px;background:radial-gradient(ellipse at 5% 100%,#49236a,transparent 65%),#17131e;color:#c7bed0;display:flex;flex-direction:column}.auth-brand{color:white!important;text-decoration:none;font-size:35px;font-weight:850;letter-spacing:-1.2px;display:inline-flex;align-items:baseline;gap:9px;width:fit-content}.auth-brand span{font-size:10px;letter-spacing:2px;color:#bd8cf5}.auth-story .auth-eyebrow{margin-top:76px;color:#c097f0}.auth-eyebrow{font-size:10px;letter-spacing:1.8px;font-weight:750;color:#8554b4;margin-bottom:16px}.auth-story h2{font-size:38px;letter-spacing:-1px;line-height:1.14;color:#fff;margin:0 0 20px}.auth-story>p:not(.auth-eyebrow){font-size:15px;line-height:1.8;max-width:310px}.auth-story-foot{margin-top:auto;padding-top:40px;display:flex;gap:16px;color:#ad91c7;font-size:8px;letter-spacing:1px}.auth-card{padding:48px 44px;align-self:center;min-width:0}.auth-card h1{font-size:28px;letter-spacing:-.8px;line-height:1.2;color:#272130;margin:0 0 12px}.auth-description{font-size:14px;color:#746a7d;line-height:1.6;margin-bottom:30px}.auth-card .field{margin-bottom:18px}.auth-card label{font-size:13px;font-weight:650}.auth-card .input-plain{height:48px;border-radius:9px;background:#fcfbfd;border-color:#ded8e6;padding:12px 14px;font-size:16px}.auth-card input::placeholder{color:#8c8296;font-size:14px}.password-field{position:relative}.password-field .input-plain{padding-right:82px}.password-toggle{position:absolute;right:4px;top:4px;height:40px;padding:0 10px;border:0;background:transparent;color:#7738b8;font:600 12px system-ui;cursor:pointer;border-radius:6px}.auth-help{text-align:right;margin:-4px 0 24px;font-size:13px}.auth-card a{color:#7538b3;text-decoration:none;font-weight:650}.auth-card a:hover{text-decoration:underline}.auth-submit{width:100%;min-height:48px;display:flex;justify-content:center;align-items:center;font-size:14px;border-radius:9px}.auth-card a.btn--primary{color:#fff}.auth-switch{text-align:center;font-size:13px;color:#756b7f;margin:24px 0}.auth-switch a{display:inline-block;margin-left:3px}.auth-divider{height:1px;background:#e9e4ef;margin:28px 0 22px}.auth-free{display:block;text-align:center;font-size:12px}.auth-back{display:inline-block;font-size:12px;margin-bottom:24px}.auth-hint{font-size:12px;color:#716778;line-height:1.7;margin:0 0 22px}.auth-unavailable{padding:18px;background:#f5f0fc;border:1px solid #e4d7f1;border-radius:10px;margin:22px 0;color:#604f70;font-size:13px;line-height:1.65}.auth-unavailable p:last-child{margin-bottom:0}.availability-note{border-left:3px solid #a378ca;padding:8px 14px;background:#f6f0fb;font-size:13px!important}.auth-card h1:focus{outline:none}.auth-card h1:focus-visible{outline:3px solid #a865ed;outline-offset:6px}@media(max-width:760px){.auth-shell{grid-template-columns:minmax(0,1fr);margin:12px auto 28px;max-width:460px;min-height:0}.auth-story{padding:24px 28px}.auth-brand{font-size:30px}.auth-story .auth-eyebrow,.auth-story h2,.auth-story>p,.auth-story-foot{display:none}.auth-card{padding:30px 28px}.auth-card h1{font-size:26px}.auth-description{margin-bottom:26px}.auth-card .auth-eyebrow{font-size:9px}.auth-back{margin-bottom:20px}}@media(max-width:390px){.auth-card{padding:28px 20px}.auth-story{padding:22px 20px}}

.manual-section form{max-width:620px}.request-card{border:1px solid #ded6e8;border-radius:12px;padding:22px;margin:18px 0;background:#fcfafe}.request-card h3{font-size:18px}.request-card details{margin:16px 0}.request-card summary{cursor:pointer;color:#7538b3;font-weight:650;margin-bottom:14px}.request-card form{margin:16px 0}.request-card label{display:block;margin:10px 0 6px;font-weight:600;font-size:13px}.request-card .btn{margin-top:10px}.payment-instructions{background:#f1e8fa;border-left:3px solid #9e63ce;padding:14px 18px;margin:16px 0}.payment-instructions p{white-space:pre-wrap;overflow-wrap:anywhere;margin:8px 0}.manual-actions{margin:18px 0}.auth-card select{font-size:14px;height:48px}.auth-card .hint{font-size:11px}@media(max-width:600px){.request-card{padding:16px}.manual-actions{align-items:stretch;flex-direction:column}.request-card .btn{max-width:100%;min-height:44px}}
