:root {
  color-scheme: light;
  --ink: #12252b;
  --muted: #667e85;
  --paper: #f2f6f6;
  --card: #ffffff;
  --card-soft: #f7fbfb;
  --line: #d5e2e3;
  --green: #168253;
  --teal: #14b8a6;
  --lime: #d9f3f0;
  --coral: #b4233c;
  --blue: #eaf3f3;
  --shadow: 0 18px 50px rgba(39, 69, 74, .10);
}
html[data-theme="dark"] { color-scheme: dark; --ink:#eff7f8; --muted:#8fa6ad; --paper:#081014; --card:#0d181e; --card-soft:#122129; --line:#233943; --green:#4ade80; --teal:#25c2b3; --lime:#163a36; --coral:#fb7185; --blue:#122129; --shadow:0 24px 70px rgba(0,0,0,.24); }
* { box-sizing: border-box; }
html { background: var(--paper); }
body { margin: 0; color: var(--ink); background: radial-gradient(circle at 78% 0%, rgba(37,194,179,.08), transparent 30rem), var(--paper); font: 15px/1.5 "Segoe UI", Inter, Arial, sans-serif; min-height: 100vh; }
button, input, textarea { font: inherit; }
button { color: inherit; }
.topbar { height: 76px; padding: 0 clamp(18px,4vw,64px); display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; border-bottom: 1px solid rgba(23,50,42,.12); background: rgba(245,242,234,.88); backdrop-filter: blur(16px); position: sticky; top: 0; z-index: 20; }
.brand { display: flex; align-items: center; gap: 10px; color: var(--ink); text-decoration: none; width: max-content; }
.brand-mark { width: 38px; height: 38px; border-radius: 11px; display: grid; place-items: center; font: 800 13px/1 Manrope; letter-spacing: -.04em; background: var(--green); color: var(--lime); }
.brand strong,.brand small { display:block; line-height:1.05; }.brand strong { font: 800 17px Manrope; }.brand small { color:var(--muted); font-size:12px; letter-spacing:.08em; text-transform:uppercase; }
.tabs { display:flex; gap:8px; background: rgba(255,255,255,.55); border:1px solid var(--line); border-radius:999px; padding:4px; }
.tab { border:0; background:transparent; padding:9px 18px; border-radius:999px; cursor:pointer; font-weight:700; color:var(--muted); }.tab.active { background:var(--green); color:white; }
.connection { justify-self:end; display:flex; align-items:center; gap:7px; color:var(--muted); font-size:13px; }.connection span { width:8px;height:8px;border-radius:50%;background:#e0a52c;box-shadow:0 0 0 4px rgba(224,165,44,.13); }.connection.ok span{background:#46a66d;box-shadow:0 0 0 4px rgba(70,166,109,.13)}.connection.fail span{background:#d75d50;}
main { max-width:1440px; margin:auto; padding: clamp(28px,4vw,62px) clamp(18px,4vw,64px) 72px; }
.view { display:none; }.view.active { display:block; }
.hero-grid { display:grid; grid-template-columns:1fr auto; gap:40px; align-items:end; margin-bottom:38px; }
.eyebrow { margin:0 0 10px; color:#6d8061; font:800 11px Manrope; letter-spacing:.18em; text-transform:uppercase; }
h1,h2,h3 { font-family:Manrope,sans-serif; margin:0; letter-spacing:-.035em; } h1{font-size:clamp(36px,5vw,66px);line-height:1.04} h1 em{font-style:normal;color:#798478;font-weight:600} h2{font-size:22px} h3{font-size:17px}
.lede { max-width:650px; color:var(--muted); font-size:17px; margin:18px 0 0; }
.step-card { display:flex; align-items:center; gap:10px; padding:15px 18px; border:1px solid var(--line); background:rgba(255,255,255,.55); border-radius:15px; box-shadow:var(--shadow); }.step-card i { width:28px;height:1px;background:var(--line)}.step{display:flex;align-items:center;gap:7px;font-size:12px;color:var(--muted);font-weight:700;white-space:nowrap}.step b{width:25px;height:25px;border:1px solid var(--line);display:grid;place-items:center;border-radius:50%;font-size:11px}.step.done{color:var(--green)}.step.done b{background:var(--lime);border-color:var(--lime)}
.workspace { display:grid; grid-template-columns:minmax(0,1.35fr) minmax(340px,.65fr); gap:22px; align-items:start; }
.panel { background:var(--card); border:1px solid var(--line); border-radius:20px; box-shadow:var(--shadow); overflow:hidden; }.search-panel{min-height:560px}.cart-panel{position:sticky;top:98px;}
.panel-heading { padding:24px 26px; border-bottom:1px solid var(--line); }.panel-heading>div{display:flex;align-items:center;gap:14px}.panel-heading h2{font-size:20px}.panel-heading p{margin:2px 0 0;color:var(--muted);font-size:13px}.panel-heading.compact{display:flex;justify-content:space-between;align-items:center}
.index { width:39px;height:39px;border-radius:11px;background:var(--lime);display:grid;place-items:center;font:800 12px Manrope}.index.coral{background:#ffd6cc}.count-badge{min-width:33px;height:33px;border-radius:50%;display:grid;place-items:center;background:var(--green);color:white;font-weight:800}
.search-form { padding:26px; border-bottom:1px solid var(--line); }.search-form>label,.form-grid label,.checkin-footer label{display:block;font-size:12px;text-transform:uppercase;letter-spacing:.07em;font-weight:800;color:#53655f;margin-bottom:8px}.search-row{display:flex;gap:10px}.search-box{height:50px;flex:1;display:flex;align-items:center;border:1px solid #cfd3ca;background:white;border-radius:12px;overflow:hidden;transition:.2s}.search-box:focus-within{border-color:#507668;box-shadow:0 0 0 3px rgba(80,118,104,.12)}.search-box span{font:800 12px Manrope;color:#789086;padding:0 14px;border-right:1px solid var(--line)}.search-box input{border:0;outline:0;width:100%;height:100%;padding:0 14px;background:transparent;color:var(--ink);font-size:16px}
.button{border:0;border-radius:11px;padding:0 17px;min-height:46px;font-weight:800;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:12px;transition:.18s}.button:hover{transform:translateY(-1px)}.button:disabled{opacity:.42;cursor:not-allowed;transform:none}.button.primary{background:var(--green);color:white}.button.primary span,.button.save span{color:var(--lime);font-size:20px}.button.subtle{background:#eef0ea;border:1px solid var(--line)}.button.save{width:100%;background:var(--green);color:white;margin-top:12px}
.empty-state{min-height:330px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--muted);text-align:center;padding:40px}.empty-state strong{color:var(--ink);margin-top:14px}.empty-state p{margin:5px 0;max-width:340px}.search-art{font-size:42px;width:74px;height:74px;display:grid;place-items:center;border:1px dashed #bbc6ba;border-radius:22px;color:#719069;background:#f5f8ed}.empty-state.error .search-art{background:#fff0eb;color:#b64e3d;border-color:#edb2a6}
.empty-state[hidden], .results[hidden] { display:none !important; }
.results{padding:14px}.result-card{display:grid;grid-template-columns:auto 1fr auto;gap:16px;align-items:center;padding:18px;border:1px solid transparent;border-radius:15px}.result-card+.result-card{border-top-color:var(--line);border-radius:0}.result-code{font:800 14px Manrope;color:var(--green);background:#eef6da;padding:8px 10px;border-radius:8px}.result-card p{margin:4px 0 0;color:var(--muted);font-size:13px}.result-meta{display:flex;gap:8px;margin-top:9px}.pill{font-size:11px;padding:4px 8px;background:#eff1ed;border-radius:6px;color:#5e6e69}.add-button{border:1px solid var(--green);background:white;color:var(--green);border-radius:10px;padding:10px 13px;font-weight:800;cursor:pointer}.add-button:hover{background:var(--green);color:white}
.cart-empty{padding:40px 30px;text-align:center;color:var(--muted)}.cart-empty div{margin:auto;width:44px;height:44px;border-radius:50%;border:1px dashed #aebbb4;display:grid;place-items:center;font-size:25px}.cart-empty p{font-size:13px}.cart-items{max-height:360px;overflow:auto}.cart-item{padding:16px 20px;border-bottom:1px solid var(--line)}.cart-title{display:flex;gap:10px;justify-content:space-between}.cart-title strong{font-size:13px}.cart-title button{border:0;background:transparent;color:#a14b3d;font-size:18px;cursor:pointer}.cart-item p{margin:4px 0;color:var(--muted);font-size:12px}.cart-item .defect{color:var(--ink)}.checkin-footer{padding:18px 20px;background:#fbfaf5;border-top:1px solid var(--line)}textarea,input{border:1px solid #cfd3ca;border-radius:10px;padding:11px 12px;color:var(--ink);background:white;outline:none;width:100%}textarea:focus,input:focus{border-color:#507668;box-shadow:0 0 0 3px rgba(80,118,104,.12)}
dialog{border:0;padding:0;border-radius:22px;width:min(680px,calc(100vw - 28px));max-height:calc(100vh - 28px);color:var(--ink);box-shadow:0 30px 100px rgba(0,0,0,.3)}dialog::backdrop{background:rgba(15,31,26,.62);backdrop-filter:blur(4px)}dialog form{padding:26px}.dialog-head{display:flex;justify-content:space-between;gap:20px;align-items:start}.icon-button{border:0;background:#eef0ea;border-radius:50%;font-size:23px;width:38px;height:38px;cursor:pointer}.product-snapshot{margin:20px 0;padding:14px;background:#f2f5ed;border-left:4px solid var(--lime);border-radius:8px;font-size:13px}.product-snapshot strong{display:block}.form-grid{display:grid;grid-template-columns:150px 1fr;gap:15px}.form-grid label{margin:0}.span-2{grid-column:1/-1}.form-grid input,.form-grid textarea{margin-top:7px;font-size:14px;text-transform:none;letter-spacing:0;font-weight:500}.photo-zone{margin-top:18px;padding:15px;border:1px dashed #b8c1b8;border-radius:12px;display:flex;justify-content:space-between;align-items:center;gap:15px}.photo-zone p{margin:2px 0;color:var(--muted);font-size:12px}.photo-button{background:var(--blue);padding:10px 12px;border-radius:9px;font-weight:800;cursor:pointer;font-size:13px}.photo-preview{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin-top:12px}.photo-thumb{aspect-ratio:1;border-radius:9px;overflow:hidden;position:relative;background:#eee}.photo-thumb img{width:100%;height:100%;object-fit:cover}.photo-thumb button{position:absolute;right:3px;top:3px;border:0;border-radius:50%;width:23px;height:23px;background:rgba(0,0,0,.65);color:white;cursor:pointer}.dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:22px}
.toast{position:fixed;right:22px;bottom:22px;max-width:390px;padding:13px 17px;background:var(--green);color:white;border-radius:11px;box-shadow:var(--shadow);transform:translateY(90px);opacity:0;transition:.25s;z-index:50}.toast.show{transform:none;opacity:1}.toast.error{background:#a84538}
.logout{border:0;background:transparent;color:var(--muted);font-weight:700;cursor:pointer;font-size:12px}.logout:hover{color:var(--ink)}
.login-screen{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:20px;background:radial-gradient(circle at 78% 0%,rgba(37,194,179,.12),transparent 35rem),var(--paper)}.login-screen[hidden]{display:none!important}.login-card{width:min(400px,100%);padding:34px;border:1px solid var(--line);border-radius:18px;background:var(--card);box-shadow:var(--shadow);text-align:center}.login-card .brand-mark{margin:0 auto 24px;width:48px;height:48px}.login-card h1{font-size:34px;line-height:1.04}.login-card>p:not(.eyebrow):not(.login-error){color:var(--muted);margin:13px 0 24px}.login-card label{display:block;text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:.08em;font-weight:800;color:var(--muted);margin-bottom:7px}.login-card input{margin-bottom:12px}.login-card .button{width:100%}.login-error{min-height:20px;margin:0 0 8px;color:var(--coral);font-size:13px}
.history-heading{display:flex;align-items:end;justify-content:space-between;margin-bottom:28px}.history-heading h1{font-size:42px}.history-list{display:grid;gap:12px}.history-card{display:grid;grid-template-columns:1.1fr .7fr .7fr auto;align-items:center;gap:18px;background:var(--card);border:1px solid var(--line);padding:18px 20px;border-radius:14px;cursor:pointer}.history-card:hover{border-color:#8da397;transform:translateY(-1px)}.history-card p{margin:3px 0;color:var(--muted);font-size:13px}.history-card .metric{font:800 17px Manrope}.history-card .metric small{display:block;font:500 11px DM Sans;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}
.back-button{border:0;background:transparent;font-weight:800;cursor:pointer;margin-bottom:20px}.detail-hero{display:flex;justify-content:space-between;gap:20px;align-items:end;margin-bottom:25px}.detail-hero h1{font-size:42px}.detail-meta{color:var(--muted)}.saved-item{background:var(--card);border:1px solid var(--line);border-radius:18px;margin-bottom:20px;overflow:hidden}.saved-head{padding:20px 22px;display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line)}.saved-head p{margin:4px 0;color:var(--muted)}.saved-head .qty{background:var(--lime);padding:8px 12px;border-radius:9px;font-weight:800;height:max-content}.saved-body{padding:20px 22px}.defect-box{background:color-mix(in srgb,var(--coral) 10%,var(--card));border-left:4px solid var(--coral);padding:13px;border-radius:7px;margin-bottom:18px}.photo-strip{display:flex;gap:8px;overflow:auto;margin-bottom:18px}.photo-strip img{width:104px;height:88px;object-fit:cover;border-radius:9px}.movement-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.movement-column{border:1px solid var(--line);border-radius:12px;overflow:hidden}.movement-column>h3{padding:14px 15px;background:var(--card-soft)}.movement-list{max-height:330px;overflow:auto}.movement{display:grid;grid-template-columns:1fr auto;gap:12px;padding:13px 15px;border-top:1px solid var(--line)}.movement:first-child{border-top:0}.movement p{margin:2px 0;color:var(--muted);font-size:12px}.movement button{border:1px solid var(--line);background:var(--card);color:var(--ink);border-radius:8px;padding:7px 9px;font-size:11px;font-weight:800;cursor:pointer;height:max-content}.movement.selected{background:var(--lime)}.movement.selected button{background:var(--teal);color:#06211f;border-color:var(--teal)}.no-movement{padding:24px;color:var(--muted);text-align:center}.history-error{padding:12px;color:var(--coral);background:color-mix(in srgb,var(--coral) 10%,var(--card))}.loading{opacity:.6;pointer-events:none}

/* Tokens visuais iguais aos portais da VPS: Segoe UI/Inter, teal e superfícies adaptativas. */
.brand-mark,.brand strong,.eyebrow,.index,.result-code,.history-card .metric { font-family:"Segoe UI", Inter, Arial, sans-serif; }
.brand-mark { background:var(--teal); color:#06211f; }.tabs{background:var(--card-soft)}.tab.active{background:var(--teal);color:#06211f}.topbar{border-color:var(--line);background:color-mix(in srgb,var(--paper) 88%,transparent)}.topbar-actions{justify-self:end;display:flex;align-items:center;gap:15px}.theme-toggle{width:34px;height:34px;border:1px solid var(--line);border-radius:9px;background:var(--card-soft);color:var(--ink);font-size:17px;cursor:pointer}.connection{justify-self:auto}.eyebrow{color:var(--teal)}h1 em{color:var(--teal)}.step-card{background:var(--card-soft)}.step.done{color:var(--teal)}.count-badge{background:var(--teal);color:#06211f}.index.coral{background:var(--blue)}.search-form>label,.form-grid label,.checkin-footer label{color:var(--muted)}.search-box,.add-button,.movement button,textarea,input{border-color:var(--line);background:var(--card);color:var(--ink)}.search-box:focus-within,textarea:focus,input:focus{border-color:var(--teal);box-shadow:0 0 0 3px color-mix(in srgb,var(--teal) 15%,transparent)}.search-box span{color:var(--teal)}.button.primary,.button.save{background:var(--teal);color:#06211f}.button.subtle,.icon-button{background:var(--card-soft);color:var(--ink)}.search-art{color:var(--teal);background:var(--card-soft);border-color:var(--line)}.result-code{color:var(--teal);background:var(--lime)}.pill{background:var(--card-soft);color:var(--muted)}.add-button{color:var(--teal);border-color:var(--teal)}.add-button:hover{background:var(--teal);color:#06211f}.checkin-footer{background:var(--card-soft)}.product-snapshot{background:var(--card-soft);border-left-color:var(--teal)}.photo-zone{border-color:var(--line)}.photo-thumb{background:var(--card-soft)}.toast{background:var(--teal);color:#06211f}.toast.error{background:var(--coral);color:#fff}.history-card:hover{border-color:var(--teal)}
@media(max-width:950px){.topbar{grid-template-columns:1fr auto}.connection{display:none}.tabs{justify-self:end}.hero-grid{grid-template-columns:1fr}.step-card{width:max-content}.workspace{grid-template-columns:1fr}.cart-panel{position:static}.search-panel{min-height:0}}
@media(max-width:640px){.topbar{height:auto;padding:12px 16px;gap:10px}.brand small{display:none}.tabs{gap:2px}.tab{padding:8px 10px;font-size:12px}main{padding:28px 14px 60px}.hero-grid{margin-bottom:22px}.step-card{width:100%;justify-content:center;overflow:auto}.step{font-size:0}.step b{font-size:11px}.search-row{flex-wrap:wrap}.search-box{flex-basis:100%}.search-row .button{flex:1}.panel-heading,.search-form{padding:18px}.result-card{grid-template-columns:auto 1fr}.result-card .add-button{grid-column:1/-1}.form-grid{grid-template-columns:1fr}.span-2{grid-column:auto}.photo-zone{align-items:flex-start;flex-direction:column}.photo-preview{grid-template-columns:repeat(4,1fr)}.history-card{grid-template-columns:1fr 1fr}.history-card .button{grid-column:1/-1}.detail-hero{align-items:start;flex-direction:column}.movement-grid{grid-template-columns:1fr}.saved-head{align-items:flex-start}.saved-head h2{font-size:18px}}

.history-later{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px;border:1px dashed var(--line);border-radius:12px;background:var(--card-soft)}.history-later p{margin:0;color:var(--muted);font-size:13px}

/* Lista de histórico com identificação e foto */
.history-thumb { width: 68px; height: 68px; object-fit: cover; border-radius: 10px; flex-shrink: 0; background: #eef1f3; }
.history-placeholder { display: flex; align-items: center; justify-content: center; font-size: 26px; }
.history-info { flex: 1; min-width: 180px; }
.history-info h3 { overflow-wrap: anywhere; }
.history-actions { display:flex; align-items:center; gap:8px; flex-wrap:wrap; }
.button.danger { color: #c43e3e; border: 1px solid #c43e3e; background: transparent; }
.button.danger:hover { background: #c43e3e; color: white; }
@media(max-width: 700px) { .history-card { flex-wrap: wrap; } .history-actions { width: 100%; justify-content: flex-end; } }
.history-card { grid-template-columns: 68px minmax(0,1fr) auto auto; }
@media(max-width:700px) { .history-card { grid-template-columns:68px minmax(0,1fr); } .history-info { min-width:0; } .history-card .metric { grid-column:1; } .history-actions { grid-column:2; } }
