:root{--ink:#172020;--ink-2:#263230;--canvas:#f5f1ea;--paper:#fffdfa;--line:#ded7cc;--muted:#6e766f;--accent:#1f765e;--accent-dark:#155443;--leather:#9b6248;--warning:#c9842d;--shadow:0 18px 55px rgba(36,36,30,.12)}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:var(--canvas);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:16px}.hidden{display:none!important}.app-shell{min-height:100vh}.login-screen{min-height:100vh;display:grid;grid-template-columns:minmax(320px,1.1fr) minmax(380px,.9fr);background:var(--paper)}.brand-panel{padding:11vh max(6vw,48px);display:flex;flex-direction:column;justify-content:center;background:radial-gradient(circle at 20% 10%,rgba(189,131,91,.24),transparent 30%),linear-gradient(145deg,#162a28,#254440);color:#fbf8f2}.brand-mark{display:grid;place-items:center;width:56px;height:56px;border:1px solid rgba(255,255,255,.45);border-radius:18px;font-size:28px;font-family:Georgia,serif;margin-bottom:40px}.eyebrow{margin:0 0 8px;color:var(--leather);font-size:12px;font-weight:800;letter-spacing:.14em}.brand-panel .eyebrow{color:#d5b393}.brand-panel h1{font-family:Georgia,serif;font-size:clamp(50px,6vw,78px);font-weight:500;line-height:1;margin:0}.brand-copy{max-width:380px;margin:24px 0 0;color:#d5dfdb;font-size:18px;line-height:1.6}.login-card{align-self:center;width:min(440px,calc(100% - 48px));margin:auto;padding:46px;background:var(--paper)}h2{margin:0;font-family:Georgia,serif;font-size:clamp(30px,3.5vw,42px);font-weight:500;letter-spacing:-.03em}h3{margin:0;font-family:Georgia,serif;font-size:28px;font-weight:500}.muted{color:var(--muted);line-height:1.55}.login-card label,.manual-panel label,.scan-box label{display:block;margin:24px 0 8px;font-weight:700;font-size:14px}input,select,textarea{width:100%;border:1px solid #cfc8bd;background:#fff;padding:14px 15px;border-radius:10px;color:var(--ink);font:inherit;outline:none;transition:border .2s,box-shadow .2s}input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(31,118,94,.14)}.button,.secondary-button,.text-button,.back-button{border:0;font:inherit;font-weight:750;cursor:pointer}.button{border-radius:10px;padding:14px 22px}.primary{background:var(--accent);color:#fff;box-shadow:0 8px 17px rgba(31,118,94,.2)}.primary:hover{background:var(--accent-dark)}.login-card .button{width:100%;margin-top:22px}.login-note{margin-top:22px;color:#8a8f89;font-size:12px;line-height:1.5}.form-error{min-height:19px;margin:8px 0 0;color:#b62f2f;font-weight:650;font-size:13px}.topbar{height:74px;padding:0 max(4vw,32px);display:flex;justify-content:space-between;align-items:center;background:var(--ink);color:#fff}.logo{color:white;text-decoration:none;font-family:Georgia,serif;font-size:25px;display:flex;gap:10px;align-items:center}.logo-dot{width:30px;height:30px;display:grid;place-items:center;border-radius:9px;background:#c88962;color:#fff;font-size:17px}.operator-chip{display:flex;align-items:center;gap:10px;color:#e5e9e4;font-size:14px}.online-dot{width:8px;height:8px;border-radius:50%;background:#82d5a9}.text-button{background:transparent;color:#dfc1a9;text-decoration:underline;padding:5px}.content-area{max-width:1140px;margin:0 auto;padding:72px 36px 90px}.module-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-top:40px}.module-card{border:1px solid var(--line);background:var(--paper);padding:32px;border-radius:18px;min-height:265px;text-align:left;display:flex;flex-direction:column;color:var(--ink)}button.module-card{cursor:pointer}.factory-card{box-shadow:var(--shadow);border-color:#e1cebf}.factory-card:hover{transform:translateY(-3px);border-color:var(--leather)}.module-icon{display:grid;place-items:center;width:46px;height:46px;border-radius:14px;background:#f0e6dd;color:var(--leather);font-size:28px;margin-bottom:auto}.module-title{font-family:Georgia,serif;font-size:28px;margin-top:26px}.module-description{color:var(--muted);margin-top:8px;line-height:1.5}.module-action{color:var(--accent);font-weight:800;margin-top:22px}.disabled-card{opacity:.64;background:#f6f3ee}.coming-soon{margin-top:auto;color:#716d65;font-size:13px;font-weight:800}.back-button{background:transparent;padding:0;color:var(--accent);margin-bottom:30px}.page-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:28px}.secondary-button{padding:12px 18px;color:var(--accent-dark);background:#e7f0ec;border:1px solid #c9dfd5;border-radius:10px}.secondary-button:hover{background:#dbeae3}.scan-box{margin-top:34px;padding:22px;border:1px solid var(--line);background:var(--paper);border-radius:16px;box-shadow:0 10px 30px rgba(54,45,31,.05)}.scan-box label{margin-top:0}.scan-row{display:flex;align-items:center;gap:10px}.scan-row input{font-size:20px;font-weight:650;letter-spacing:.02em}.scan-icon{font-size:24px;color:var(--leather)}.scan-feedback{min-height:20px;margin:13px 0 0;color:var(--muted);font-size:14px}.scan-feedback.error{color:#ba3333}.op-card,.confirmation-panel,.manual-panel,.history-panel{margin-top:24px;background:var(--paper);border:1px solid var(--line);border-radius:16px}.op-card{overflow:hidden}.op-card-header{padding:26px 28px 22px;display:flex;justify-content:space-between;align-items:flex-start;gap:20px;border-bottom:1px solid var(--line)}.status-badge{padding:8px 12px;background:#e5e9e8;color:#475150;border-radius:999px;font-size:13px;font-weight:800;white-space:nowrap}.status-badge.production{background:#d7eee5;color:#176247}.status-badge.manual{background:#fff0d5;color:#9a5b16}.op-details{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:22px;padding:23px 28px}.detail{display:flex;flex-direction:column;gap:6px}.detail span{font-size:12px;color:var(--muted);font-weight:750;text-transform:uppercase;letter-spacing:.08em}.detail strong{font-size:14px;line-height:1.4}.confirmation-panel,.manual-panel{padding:30px}.confirmation-panel h3{margin-top:8px}.confirmation-panel h3 strong{color:var(--accent)}.confirmation-panel>p:not(.eyebrow){color:var(--muted);line-height:1.5}.step-indicator{display:flex;align-items:center;gap:8px;float:right}.step-indicator span{width:25px;height:25px;display:grid;place-items:center;border-radius:50%;font-size:11px;font-weight:800;background:#ece8df;color:#777}.step-indicator span.active{background:var(--accent);color:#fff}.step-indicator i{height:1px;width:22px;background:#d5d0c6}.confirmation-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:26px}.large{padding:15px 24px}.required{color:#bd3b33;font-weight:700;font-size:12px}.manual-panel h3{margin:4px 0}.manual-panel label{margin-top:18px}.history-panel{padding:27px 28px}.history-heading{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}.history-heading>span{padding:7px 10px;border-radius:999px;background:#edf2ed;color:#5d7569;font-size:12px;font-weight:750}.history-list{margin-top:20px;border-top:1px solid var(--line)}.history-entry{display:grid;grid-template-columns:110px 1fr auto;gap:14px;padding:15px 0;border-bottom:1px solid var(--line);align-items:center}.history-entry time{color:var(--muted);font-size:13px}.history-entry strong{font-size:14px}.history-entry span{font-size:13px;color:var(--muted);text-align:right}.history-entry small{display:block;color:#8a6f5e;margin-top:3px}@media(max-width:760px){.login-screen{grid-template-columns:1fr}.brand-panel{min-height:300px;padding:60px 32px}.brand-panel h1{font-size:54px}.login-card{padding:46px 0}.topbar{padding:0 20px}.operator-chip{font-size:12px}.content-area{padding:45px 20px 70px}.module-grid{grid-template-columns:1fr}.page-heading{display:block}.page-heading .secondary-button{margin-top:20px}.scan-row{flex-wrap:wrap}.scan-row input{flex:1;min-width:180px}.op-card-header{display:block}.status-badge{display:inline-block;margin-top:18px}.op-details{grid-template-columns:1fr 1fr}.detail.wide{grid-column:1/-1}.confirmation-actions{justify-content:stretch;flex-direction:column-reverse}.confirmation-actions>*{width:100%}.history-entry{grid-template-columns:90px 1fr}.history-entry span{grid-column:2;text-align:left}.step-indicator{float:none;margin-bottom:20px}}
.route-note{margin-top:22px}.route-note label{display:block;margin-bottom:8px;font-weight:700;font-size:14px}.optional{color:var(--muted);font-weight:650;font-size:12px}
.route-actions-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));justify-content:stretch}.route-actions-grid .button,.route-actions-grid .secondary-button{width:100%}
/* Direção visual inspirada no site FIG: fundo claro, grafite, couro e tipografia editorial. */
:root{--ink:#363636;--ink-2:#4a4a4a;--canvas:#f7f6f4;--paper:#fff;--line:#dedbd7;--muted:#777370;--accent:#3e3e3e;--accent-dark:#1f1f1f;--leather:#744238;--shadow:0 16px 42px rgba(45,37,34,.09)}
.brand-panel{background:radial-gradient(circle at 22% 18%,rgba(126,69,52,.28),transparent 32%),linear-gradient(145deg,#232323,#4a4a4a)}.brand-mark{width:auto;height:auto;border:0;border-radius:0;font-family:Georgia,serif;font-size:36px;letter-spacing:.02em}.brand-panel .eyebrow{color:#dfc5b7}.topbar{background:#fff;color:var(--ink);border-bottom:1px solid var(--line)}.logo{color:var(--ink);font-size:28px;line-height:.7}.logo small{display:block;margin-top:7px;font-family:ui-sans-serif,system-ui,sans-serif;font-size:6px;font-weight:700;letter-spacing:.13em}.logo-dot{width:auto;height:auto;border-radius:0;background:transparent;color:var(--ink);font-family:Georgia,serif;font-size:20px}.operator-chip{color:#56514e}.text-button{color:#744238}.online-dot{background:#744238}.primary{background:#3e3e3e;box-shadow:0 8px 17px rgba(0,0,0,.12)}.primary:hover{background:#1f1f1f}.secondary-button{background:#f4f1ee;border-color:#d9d2cd;color:#4c3934}.secondary-button:hover{background:#ece7e2}.factory-card{border-color:#d8cdc6}.factory-card:hover{border-color:#744238}.module-icon{background:#f2ece7;color:#744238}.module-action,.back-button{color:#744238}.scan-box{box-shadow:none}.scan-icon,.eyebrow{color:#744238}.status-badge.production{background:#ece8e3;color:#403b38}.status-badge.manual{background:#f2e5df;color:#744238}.confirmation-panel h3 strong{color:#744238}.step-indicator span.active{background:#744238}.history-heading>span{background:#f1eeea;color:#5d504a}@media(max-width:760px){.route-actions-grid{grid-template-columns:1fr}}
.review-module-card{box-shadow:var(--shadow);border-color:#d8cdc6}.review-module-card:hover{transform:translateY(-3px);border-color:#744238}.review-icon{background:#f2e5df;color:#744238}.review-heading-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px;flex-wrap:wrap}.review-counter{display:flex;align-items:center;gap:10px;padding:11px 16px;border:1px solid #d8cdc6;border-radius:999px;background:#f4ece8;color:#624139;font-size:13px;font-weight:700;white-space:nowrap}.review-counter strong{font-size:22px}.review-list-panel,.review-detail-card{margin-top:32px;padding:28px;background:var(--paper);border:1px solid var(--line);border-radius:16px}.review-list-heading,.review-detail-heading,.review-finalize-row{display:flex;justify-content:space-between;align-items:flex-start;gap:22px}.review-list-feedback{max-width:370px;margin:0;color:#624139;font-size:14px;line-height:1.45;text-align:right}.review-orders{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;margin-top:24px}.review-order{display:grid;grid-template-columns:auto 1fr;column-gap:12px;row-gap:5px;padding:18px;border:1px solid var(--line);border-radius:12px;background:#fff;text-align:left;color:var(--ink);font:inherit;cursor:pointer;transition:border .2s,transform .2s,box-shadow .2s}.review-order:hover{border-color:#744238;transform:translateY(-2px);box-shadow:0 10px 20px rgba(116,66,56,.1)}.review-order strong{font-family:Georgia,serif;font-size:19px}.review-order span{justify-self:end;border-radius:999px;background:#f4ece8;color:#744238;padding:3px 8px;font-size:12px;font-weight:800}.review-order small{grid-column:1/-1;color:var(--muted);line-height:1.4}.empty-state{margin:24px 0 0;padding:25px;border:1px dashed #d5cfc4;border-radius:12px;color:var(--muted);text-align:center}.review-details{display:grid;grid-template-columns:2fr 1fr 1fr;gap:22px;padding:24px 0;border-bottom:1px solid var(--line)}.review-finalize-row{align-items:center;padding-top:24px}.review-finalize-row p{margin:7px 0 0;color:var(--muted);line-height:1.5}.review-note{margin:22px 0 0;padding-top:18px;border-top:1px solid var(--line);color:#8a6f5e;font-size:13px;line-height:1.5}@media(max-width:760px){.review-heading-actions{justify-content:flex-start}.review-counter{display:inline-flex;margin-top:20px}.review-list-heading,.review-detail-heading,.review-finalize-row{display:block}.review-list-feedback{margin-top:12px;text-align:left}.review-orders{grid-template-columns:1fr}.review-detail-heading .status-badge{margin-top:15px}.review-details{grid-template-columns:1fr 1fr}.review-finalize-row .button{width:100%;margin-top:20px}}
.review-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px;flex-wrap:wrap}.review-return-panel{margin-top:24px;padding:22px;border:1px solid #d8cdc6;border-radius:12px;background:#faf8f6}.review-return-panel label{display:block;margin:0 0 8px;font-size:14px;font-weight:700}.review-return-panel select{margin-bottom:20px}.review-return-panel textarea{margin-top:0}.review-return-panel .confirmation-actions{margin-top:14px}@media(max-width:760px){.review-actions{display:grid;grid-template-columns:1fr;gap:10px;margin-top:20px}.review-actions .button,.review-actions .secondary-button{width:100%;margin:0}.review-return-panel{padding:18px}}
.heading-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}.batch-panel{margin-top:34px;padding:28px;background:var(--paper);border:1px solid var(--line);border-radius:16px;box-shadow:0 10px 30px rgba(54,45,31,.05)}.batch-heading{display:flex;justify-content:space-between;gap:20px;align-items:flex-start}.batch-heading .text-button{padding:4px 0}.batch-heading .muted{margin:8px 0 0}.batch-scan-row{display:flex;gap:10px;margin-top:22px}.batch-scan-row input{font-size:19px;font-weight:650}.batch-orders{display:grid;gap:10px;margin-top:20px}.batch-order{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:15px 17px;border:1px solid var(--line);border-radius:11px;background:#fff}.batch-order strong{font-family:Georgia,serif;font-size:19px}.batch-order span{justify-self:start;border-radius:999px;background:#f4ece8;color:#744238;padding:4px 9px;font-size:12px;font-weight:800}.batch-order small{grid-column:1/3;color:var(--muted);line-height:1.4}.batch-order button{grid-column:3;grid-row:1/3;width:30px;height:30px;border:0;border-radius:50%;background:#f3efeb;color:#744238;font-size:21px;line-height:1;cursor:pointer}.batch-order button:hover{background:#eadfd8}.batch-panel>.confirmation-actions{margin-top:20px}@media(max-width:760px){.heading-actions{justify-content:flex-start;margin-top:20px}.batch-heading{display:block}.batch-heading .text-button{margin-top:14px}.batch-scan-row{flex-wrap:wrap}.batch-scan-row input,.batch-scan-row .button{width:100%}.batch-order{grid-template-columns:auto 1fr auto}.batch-order small{grid-column:1/-1;grid-row:2}.batch-order button{grid-column:3;grid-row:1}.batch-panel>.confirmation-actions{flex-direction:column-reverse}.batch-panel>.confirmation-actions>*{width:100%}}
