@font-face{font-family:Jakarta;src:url('assets/jakarta-400.woff2') format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:Jakarta;src:url('assets/jakarta-600.woff2') format('woff2');font-weight:600;font-display:swap}
@font-face{font-family:Jakarta;src:url('assets/jakarta-800.woff2') format('woff2');font-weight:800;font-display:swap}
:root{font-family:Jakarta,system-ui,sans-serif;color:#20251f;background:#e9ece5;font-synthesis:none;--green:#bde578;--ink:#20251f;--muted:#6d766a;--line:#e2e7dc;--paper:#f6f7f2;--warn:#8a5221;--red:#a23d35}
*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #568925;outline-offset:3px}button:disabled{opacity:.45;cursor:not-allowed}a{color:inherit}h1,h2,h3,p{margin:0}button{border:0}button svg{pointer-events:none}.workspace{max-width:1100px;margin:auto;display:flex;justify-content:center;align-items:flex-start;gap:100px;padding:36px 24px}.desktop-note{width:390px;padding-top:110px;position:sticky;top:0}.eyebrow{font-size:10px;font-weight:800;letter-spacing:1.7px;color:var(--muted)}.desktop-note h1{font-size:43px;letter-spacing:-2.2px;line-height:1.2;margin:24px 0}.desktop-note p{font-size:16px;color:var(--muted);line-height:1.7;max-width:330px}.aside-rule{height:1px;background:#cdd4c5;width:75px;margin:32px 0}.desktop-note p.small{font-size:12px;margin-bottom:18px}.app-shell{background:var(--paper);width:420px;min-width:0;min-height:850px;box-shadow:0 16px 90px #26351a18;border:1px solid #d6ddce;border-radius:28px;overflow:hidden;position:relative;padding-bottom:95px}.demo-banner{background:#e4ebdb;display:flex;justify-content:space-between;gap:8px;padding:10px 20px;font-size:9px;letter-spacing:1.1px;font-weight:800}.demo-banner span{font-weight:500;letter-spacing:0;font-size:10px}.topbar{display:flex;align-items:center;justify-content:space-between;padding:24px 22px 15px}.brand{font-size:34px;font-weight:800;letter-spacing:-2.3px;text-decoration:none}.brand span{color:#6b9d3d}.identity{display:flex;gap:9px;align-items:center;text-align:left;background:transparent;padding:0;font-size:12px;font-weight:700}.identity small{display:block;font-size:9px;color:var(--muted);font-weight:500;margin-top:3px}.avatar{border:1px solid #d3ddc7;border-radius:50%;background:#e6eddc;height:35px;width:35px;display:grid;place-items:center;font-size:12px}.chevron{padding-left:4px;color:var(--muted)}main{padding:10px 20px 20px}.greeting{font-size:12px;color:var(--muted);margin-bottom:6px}h2{font-size:27px;letter-spacing:-1px;line-height:1.25}.subtext{color:var(--muted);font-size:12px;line-height:1.6;margin-top:8px}.summary{display:grid;grid-template-columns:1fr 1fr;background:var(--ink);color:#fff;border-radius:19px;padding:22px 20px;margin-top:23px;position:relative;overflow:hidden}.summary>div+div{border-left:1px solid #ffffff24;padding-left:24px}.summary strong{font-size:31px;letter-spacing:-1px;line-height:1.2;display:block}.summary small{color:#ccd6c5;font-size:10px;margin-top:7px;display:block}.summary strong.accent{color:var(--green)}.section-label{display:flex;align-items:center;justify-content:space-between;margin:25px 0 12px;font-size:12px;font-weight:800}.section-label span{font-size:10px;color:var(--muted);font-weight:500}.filters{display:flex;gap:7px;margin:18px 0 16px}.chip{border:1px solid var(--line);border-radius:99px;padding:9px 14px;background:transparent;font-size:10px;font-weight:700;min-height:37px}.chip.active{background:var(--ink);color:#fff;border-color:var(--ink)}.order{padding:17px;background:#fff;border:1px solid var(--line);border-radius:18px;margin-bottom:12px}.order-top{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:17px;font-size:10px;color:var(--muted)}.order-id{letter-spacing:.6px;font-weight:700}.tag{font-size:9px;font-weight:700;border-radius:6px;background:#edf1e7;padding:5px 8px;color:#566a44}.tag.warn{color:var(--warn);background:#fff0dc}.tag.done{background:#e6f3d7;color:#426729}.product{display:flex;gap:13px;align-items:center}.product-thumb{width:65px;height:69px;background:#f1f3ed;display:grid;place-items:center;border-radius:13px;flex-shrink:0}.product h3{font-size:14px;letter-spacing:-.3px}.product p{font-size:11px;color:var(--muted);margin-top:6px}.product .sku{font-size:9px;margin-top:7px;letter-spacing:.1px}.qty{margin-left:auto;text-align:right;flex-shrink:0}.qty strong{font-size:22px;letter-spacing:-.5px}.qty small{display:block;font-size:9px;color:var(--muted);margin-top:1px}.progress-line{height:4px;background:#edf0e7;border-radius:4px;margin:16px 0 8px;overflow:hidden}.progress-line span{display:block;background:#8cb557;height:100%}.progress-caption{display:flex;justify-content:space-between;font-size:9px;color:var(--muted);margin-bottom:14px}.primary,.secondary,.danger-btn{width:100%;min-height:48px;border-radius:12px;font-size:12px;font-weight:800;display:flex;align-items:center;justify-content:center;gap:9px}.primary{background:var(--green);color:#233219}.secondary{border:1px solid #dfe5d7;background:#fff;color:var(--ink)}.danger-btn{background:#fff0dc;color:var(--warn)}.order .primary{min-height:43px;font-size:11px}.inline-note{font-size:10px;color:var(--muted);line-height:1.6;margin:12px 0}.inline-note.warning{color:var(--warn)}.bottom-nav{display:grid;grid-template-columns:repeat(4,1fr);background:#fff;border-top:1px solid var(--line);position:absolute;bottom:0;left:0;right:0;padding:12px 6px 19px;z-index:5}.nav-item{background:transparent;font-size:9px;display:flex;flex-direction:column;gap:6px;align-items:center;color:#86907d;min-height:43px;justify-content:center}.nav-item.active{color:#344c24;font-weight:800}.nav-item.active svg{background:#eaf2df;border-radius:7px;box-sizing:content-box;padding:3px;margin:-3px}.stock-head{display:flex;align-items:center;justify-content:space-between}.stock-group{background:#fff;border:1px solid var(--line);border-radius:16px;margin-top:13px;overflow:hidden}.stock-group h3{font-size:12px;padding:15px 16px;background:#f0f3eb}.stock-row{padding:14px 16px;display:flex;align-items:center;justify-content:space-between;border-top:1px solid #edf0e7;gap:10px;font-size:12px}.stock-row small{display:block;font-size:9px;color:var(--muted);margin-top:4px}.stock-row strong{font-size:15px}.stock-row.low strong{color:var(--warn)}.stock-row b{font-size:10px;font-weight:500;color:var(--muted)}.notice{background:#eaf0e1;border:1px solid #dce6ce;padding:14px;border-radius:12px;font-size:11px;line-height:1.65;margin:18px 0;color:#526944}.notice.warning{background:#fff3e4;border-color:#f0dfc7;color:var(--warn)}.entry-card{background:#fff;border:1px solid var(--line);padding:20px 17px;border-radius:18px;margin-top:22px}label{font-size:11px;font-weight:700;display:block;margin:17px 0 8px}select,input[type=number]{width:100%;border:1px solid #d9e1d0;border-radius:10px;background:white;padding:13px;font-size:14px;color:var(--ink);min-height:49px}input[type=number]{appearance:textfield;text-align:center}input::-webkit-inner-spin-button{appearance:none}.entry-card .primary{margin-top:22px}.history-card{padding:17px;background:#fff;border:1px solid var(--line);border-radius:15px;margin-top:11px}.history-card h3{font-size:12px;line-height:1.5}.history-card p{font-size:10px;color:var(--muted);margin-top:7px;line-height:1.6}.history-card time{font-size:9px;color:var(--muted)}.empty{text-align:center;padding:45px 20px;color:var(--muted);font-size:12px;line-height:1.8}.empty svg{margin-bottom:16px;color:#7e9d62}.empty strong{display:block;color:var(--ink);font-size:16px}.full-link{display:block;text-align:center;background:transparent;color:var(--muted);text-decoration:underline;font-size:10px;padding:18px;width:100%;min-height:44px}.finish-note{color:#527240;font-size:10px;line-height:1.6;margin-top:12px}
dialog{border:0;border-radius:23px;padding:0;width:min(400px,calc(100% - 24px));max-height:90dvh;background:var(--paper);color:var(--ink);box-shadow:0 20px 70px #0003}dialog::backdrop{background:#1822137a;backdrop-filter:blur(3px)}#sheet-content{padding:22px}.sheet-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:19px}.sheet-top h2{font-size:21px}.close{background:#e7ece0;border-radius:50%;width:36px;height:36px;font-size:21px;display:grid;place-items:center}.sheet-product{padding-bottom:16px;border-bottom:1px solid var(--line)}.sheet-product h3{font-size:15px}.sheet-product p{font-size:11px;color:var(--muted);margin-top:7px}.stepper{display:grid;grid-template-columns:52px 1fr 52px;align-items:center;gap:10px;margin:14px 0}.stepper button{height:51px;border-radius:12px;background:#e6eddb;font-size:25px}.stepper input{font-size:25px;font-weight:800;padding:8px}.materials{padding:15px;background:#fff;border:1px solid var(--line);border-radius:14px;margin:17px 0}.materials h3{font-size:11px;margin-bottom:10px}.material{display:flex;justify-content:space-between;gap:12px;padding:6px 0;font-size:11px}.material.bad{color:var(--red);font-weight:700}.material small{display:block;font-size:9px;margin-top:4px;font-weight:400}.sheet-actions{display:grid;gap:10px;margin-top:16px}.result-state{padding:12px 0 3px;text-align:center}.success-symbol{display:grid;place-items:center;width:62px;height:62px;border-radius:50%;background:#e2efcf;color:#486c29;margin:2px auto 18px}.result-state h2{font-size:24px}.result-state p{font-size:12px;color:var(--muted);line-height:1.7;margin:12px 0 21px}.explain{font-size:11px;line-height:1.8;color:var(--muted)}.explain h3{color:var(--ink);font-size:13px;margin:20px 0 8px}.explain ul{padding-left:18px}.explain code{font-size:10px}.explain .secondary{margin-top:14px}#toast{position:fixed;bottom:100px;left:50%;transform:translateX(-50%);padding:13px 20px;background:var(--ink);color:#fff;border-radius:12px;font-size:11px;z-index:30;max-width:calc(100% - 32px);opacity:0;pointer-events:none;transition:opacity .2s}#toast.show{opacity:1}.count-label{text-align:center;font-size:10px;color:var(--muted)}.form-error{font-size:11px;color:var(--red);line-height:1.6;margin-top:10px}
@media(max-width:850px){.desktop-note{display:none}.workspace{padding:0;display:block}.app-shell{width:100%;max-width:480px;min-height:100dvh;margin:auto;border:0;border-radius:0;box-shadow:none;padding-bottom:100px}.bottom-nav{position:fixed;max-width:480px;margin:auto;padding-bottom:calc(12px + env(safe-area-inset-bottom));min-height:76px}.demo-banner{padding-top:calc(10px + env(safe-area-inset-top))}dialog{margin:auto auto 12px}body{background:var(--paper)}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}

/* Keep operational text readable on small phones. */
.subtext{font-size:13px}.summary small{font-size:12px}.chip{font-size:12px;min-height:42px}.section-label{font-size:13px}.section-label span{font-size:11px}.product h3{font-size:16px}.product p{font-size:13px}.product .sku{font-size:10px}.qty small{font-size:11px}.order-top{font-size:11px}.tag{font-size:10px}.progress-caption{font-size:10px}.order .primary,.primary,.secondary,.danger-btn{font-size:14px;min-height:48px}.inline-note{font-size:12px}.nav-item{font-size:11px}.material{font-size:13px}.material small{font-size:11px}.materials h3{font-size:12px}.count-label{font-size:12px}label{font-size:13px}.stock-row{font-size:14px}.stock-group h3{font-size:13px}.stock-row small{font-size:11px}.history-card h3{font-size:14px}.history-card p{font-size:12px}.history-card time{font-size:11px}.notice,.explain{font-size:12px}.sheet-product p{font-size:13px}.finish-note{font-size:12px}

/* Integrated João / Jo preview. */
.role-switch{padding:0 20px 14px}.role-switch>p{font-size:11px;color:var(--muted);margin:0 0 8px}.role-switch>div{display:grid;grid-template-columns:1fr 1fr;gap:7px;padding:5px;background:#e9ede3;border:1px solid var(--line);border-radius:14px}.role-switch button{background:transparent;border:1px solid transparent;border-radius:10px;text-align:left;padding:10px 12px;min-height:61px}.role-switch button.active{background:#fff;border-color:#c7d6b6;box-shadow:0 2px 5px #24341a08}.role-switch strong{font-size:15px;display:block}.role-switch span{display:block;font-size:11px;margin-top:4px;color:var(--muted)}.filters.wrap{flex-wrap:wrap;gap:6px}.handoff-counts{display:grid;grid-template-columns:1fr 1fr;gap:10px;border-block:1px solid var(--line);padding:12px 0;margin:16px 0;font-size:11px;color:var(--muted);line-height:1.5}.handoff-counts b{display:block;color:var(--ink);font-size:18px}.handoff-preview{display:grid;gap:8px;margin:15px 0;padding:16px;background:#e9f1df;border-radius:12px;font-size:13px}.flow-explainer{margin:22px 0;padding:18px 22px;background:var(--ink);color:#fff;border-radius:18px;display:grid;gap:10px}.flow-explainer>span{font-size:14px;font-weight:700}.flow-explainer small{display:block;font-size:11px;font-weight:400;color:#d0ddc4;margin-top:4px}.flow-explainer>b{font-size:18px;color:var(--green)}.flow-title{font-size:14px}.timeline{list-style:none;margin:18px 0;padding:0}.timeline li{position:relative;padding:0 0 20px 23px;border-left:2px solid #dfe6d7;margin-left:5px}.timeline li:last-child{padding-bottom:4px;border-color:transparent}.timeline li:before{content:'';position:absolute;left:-6px;top:3px;width:10px;height:10px;background:#dfe6d7;border:2px solid var(--paper);border-radius:50%}.timeline li.complete:before{background:#628e3b}.timeline li.current:before{background:#c58a35}.timeline b{font-size:13px;display:block}.timeline span{font-size:12px;line-height:1.6;color:var(--muted);display:block;margin-top:4px}.check-row{display:flex;align-items:center;gap:10px;font-size:13px;line-height:1.6;min-height:44px}.check-row input{width:21px;height:21px;flex-shrink:0;accent-color:#628e3b}.warning{color:var(--warn)}.sheet-top h2{font-size:20px;line-height:1.3}.sheet-top .close{flex-shrink:0}.order-id{letter-spacing:0}.order-top{flex-wrap:wrap}.progress-caption{gap:10px;line-height:1.6}.product .sku{overflow-wrap:anywhere}#check-form .primary{margin-top:18px}.identity small{font-size:11px}

/* UX revision 4: task first, explicit quantities and safe local editing. */
:root{--muted:#56614f}
[hidden]{display:none!important}
.skip-link{position:fixed;top:8px;left:8px;transform:translateY(-160%);z-index:50;background:#fff;padding:14px;border:2px solid var(--ink);border-radius:8px}
.skip-link:focus{transform:none}
.topbar{padding:10px 20px 5px;gap:8px}.brand{font-size:30px;min-height:44px;display:flex;align-items:center}.identity{min-height:44px}.identity small{font-size:10px}.demo-banner{font-size:10px;padding:8px 20px}
.role-switch{padding:0 20px 6px}.role-switch summary{display:flex;align-items:center;gap:6px;min-height:44px;font-size:12px;cursor:pointer}.role-switch summary strong{display:inline;font-size:13px}.role-switch summary span{margin:0 0 0 auto;font-size:12px;text-decoration:underline}.role-switch details>div{display:grid;grid-template-columns:1fr 1fr;gap:6px;background:#e9ede3;padding:5px;border-radius:12px;border:1px solid var(--line)}.role-switch summary:focus-visible{outline:3px solid #568925;outline-offset:2px;border-radius:8px}
main{padding:6px 20px 20px}.app-shell[data-view="fila"] .greeting{display:none}.app-shell[data-view="fila"] .summary{display:none}.app-shell[data-view="fila"] h2{font-size:23px}.subtext{margin-top:5px;font-size:12px}.filters{margin:12px 0}.filters.wrap{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.chip{font-size:12px;min-height:44px;padding:8px 9px}.section-label{margin:12px 0 8px;font-size:12px;gap:5px}.section-label span{font-size:10px}.order{padding:14px}.order-top{margin-bottom:10px}.product-thumb{width:52px;height:56px}.product-thumb svg{width:44px;height:44px}.product{gap:10px}.product h3{font-size:15px}.product p{font-size:12px}.product .sku{font-size:10px}.order>.primary{margin-top:14px}.handoff-counts{padding:8px 0;margin:12px 0}.nav-item{min-height:44px;color:#59654f}.close{width:44px;height:44px}.quantity-shortcut{display:block;min-height:44px;background:#e8efdf;border:1px solid #c9d8b8;border-radius:10px;padding:10px 14px;color:#344c24;font-size:13px;font-weight:600;margin:10px 0;width:100%}input[type=number],select,textarea{font-size:16px}textarea{font-family:inherit;width:100%;padding:12px;border:1px solid #d9e1d0;border-radius:10px;resize:vertical;background:#fff;color:var(--ink)}
.access-status{margin:8px 20px;padding:12px;background:#fff0dc;color:#754115;border-radius:10px;font-size:12px;line-height:1.6}.access-status button{background:transparent;color:inherit;text-decoration:underline;font-weight:700;min-height:44px;padding:4px}.undo-panel{margin-top:18px;padding:14px;border:1px solid #cad8bb;border-radius:12px;background:#edf3e5}.undo-panel h3{font-size:14px}.undo-panel>p{font-size:12px;line-height:1.7;margin:8px 0 12px}.sheet-top h2:focus{outline:none}#main:focus{outline:none}
.role-switch .role-toggle{display:flex;width:100%;align-items:center;gap:6px;min-height:44px;padding:0;border:0;background:transparent;font-size:12px}.role-toggle strong{display:inline;font-size:13px}.role-toggle span{margin:0 0 0 auto;font-size:12px;text-decoration:underline}.role-switch .role-options-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px;background:#e9ede3;padding:5px;border-radius:12px;border:1px solid var(--line)}.role-switch>#role-options{display:block;padding:0;background:transparent;border:0}
