:root{font-family:system-ui,-apple-system,"Noto Sans Thai",sans-serif;color:#203b34;background:#f4f6f2;font-size:16px}*{box-sizing:border-box}body{margin:0}main{max-width:720px;margin:auto;padding:24px 20px}header,.results-heading,.filter-row{display:flex;justify-content:space-between;align-items:center;gap:16px}.brand{font-size:28px;font-weight:850;display:flex;align-items:center;gap:12px}.brand span{font-size:10px;letter-spacing:2px;max-width:70px}.badge{font-size:12px;background:#e3ece5;padding:7px 12px;border-radius:30px}.intro{padding:28px 0 18px}.eyebrow{font-size:12px;letter-spacing:1px;color:#527061}h1{font-size:42px;line-height:1.25;margin:12px 0;letter-spacing:-1.5px}p{line-height:1.65;color:#62716b}h2{font-size:18px;margin:0 0 12px}.panel{border:1px solid #dbe3da;background:#fff;border-radius:20px;padding:22px;margin-bottom:16px}.button{display:inline-flex;justify-content:center;align-items:center;font:inherit;border:0;border-radius:12px;padding:13px 16px;cursor:pointer;margin:4px 3px 4px 0;font-size:14px}.primary{background:#174d3c;color:white}.secondary{background:#edf3ec;color:#174d3c}input,select{width:100%;font:inherit;padding:13px 12px;border:1px solid #d3ddd4;border-radius:12px;background:white;min-height:48px;color:#203b34}input:focus,select:focus,button:focus-visible,summary:focus-visible{outline:3px solid #a4d5bc;outline-offset:2px}label{display:block;font-size:13px;font-weight:650;margin:10px 0 7px}.hint{font-size:11px;margin-bottom:0}summary{cursor:pointer;font-size:13px;margin-top:16px}details p{font-size:12px}.filter-row>div{width:50%}.filters{margin:24px 0}.text-button{background:transparent;border:0;color:#25634b;cursor:pointer;padding:10px 0;font:inherit;font-size:13px}.results-heading{margin:20px 0 12px}.results-heading h2{margin:0}#count{font-size:13px;color:#62716b}.card{display:block;text-align:left;width:100%;font:inherit;border:1px solid #dde5dd;border-radius:17px;padding:19px;background:white;margin-bottom:12px;cursor:pointer;color:inherit}.card-top{display:flex;justify-content:space-between;gap:12px;margin-bottom:12px}.card strong{font-size:18px}.pill{background:#e9f2e8;color:#37694c;border-radius:8px;padding:5px 9px;font-size:12px}.card p{font-size:13px;margin:4px 0}.card small{display:block;color:#567267;margin-top:12px}.empty{text-align:center;padding:34px 15px;border:1px dashed #ccd7cd;border-radius:18px}.sample{background:#fff1d2;color:#7d5c16;padding:10px;border-radius:10px;font-size:12px}#message{font-size:13px}footer{text-align:center;color:#7a877d;font-size:11px;padding:32px 0}dialog{border:0;border-radius:20px;max-width:480px;width:calc(100% - 32px);padding:24px;color:#203b34}dialog::backdrop{background:#173c32a0}dt{font-size:12px;color:#6a7e71;margin-top:15px}dd{margin:3px 0;overflow-wrap:anywhere}[hidden]{display:none!important}#columns{display:grid;grid-template-columns:1fr 1fr;gap:0 12px}@media(max-width:380px){h1{font-size:36px}.button{width:100%}#columns{grid-template-columns:1fr}}
.day-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.day-button{font:inherit;font-size:14px;min-height:48px;background:#f3f6f1;border:1px solid #d5e0d6;border-radius:10px;color:#385d4a;cursor:pointer}.day-button[aria-pressed=true]{background:#174d3c;color:white;border-color:#174d3c}.full{width:100%;margin-top:14px}.status{padding:22px;border-radius:16px;margin:18px 0;border:1px solid #d8dfd5;overflow-wrap:anywhere}.status strong{font-size:19px}.status p{font-size:13px;margin:8px 0 0;color:inherit}.status.pending,.status.unknown{background:#fff5db;color:#725317;border-color:#ead7a4}.status.pass{background:#e1f4e6;color:#1c5d34;border-color:#99cca9}.status.fail{background:#ffebeb;color:#992c2c;border-color:#e8b3b3}.store-card{cursor:default}.store-fail{border-left:4px solid #c44545}.store-fail .pill{background:#ffebeb;color:#992c2c}.store-pass{border-left:4px solid #398354}.card-top strong{overflow-wrap:anywhere;min-width:0}.pill{flex-shrink:0;align-self:start}#source-name,#message{overflow-wrap:anywhere}
.result-panel{border:1px solid #dbe3da;border-radius:16px;background:#fff;overflow:hidden;margin:18px 0}.result-panel .status{border:0;border-radius:0;margin:0;padding:12px 16px;display:flex;align-items:center;justify-content:space-between;gap:12px}.result-panel .status strong{font-size:17px;flex-shrink:0}.result-panel .status p{margin:0;font-size:12px;text-align:right}.result-tools{display:flex;align-items:center;gap:10px;padding:12px}.result-tools input{font-size:13px;min-height:40px;padding:9px 10px;min-width:0}.result-tools #count{white-space:nowrap;font-size:11px}.result-columns{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px;padding:0 12px 12px}.result-group{min-width:0;border:1px solid;border-radius:10px;overflow:hidden}.result-group h2{font-size:14px;padding:10px;margin:0;display:flex;justify-content:space-between;gap:5px}.result-group h2 span{font-size:12px;align-self:center}.group-pass{border-color:#badcc4;background:#f4faf5;color:#235f37}.group-pass h2{background:#e1f1e5}.group-fail{border-color:#ebc1c1;background:#fff8f8;color:#982d2d}.group-fail h2{background:#fce6e6}.store-scroll{max-height:200px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin}.store-scroll:focus-visible{outline:2px solid currentColor;outline-offset:-2px}.store-scroll ul{list-style:none;margin:0;padding:0}.store-row{padding:8px 10px;border-top:1px solid #203b3410;font-size:13px;line-height:1.5;overflow-wrap:anywhere}.store-row small{display:block;font-size:10px;margin-top:2px}.group-empty{color:inherit;opacity:.7;font-size:12px;text-align:center;margin:12px 0}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:380px){.result-panel .status{align-items:flex-start;gap:8px}.result-panel .status p{font-size:11px}.result-columns{gap:6px;padding:0 8px 8px}.result-group h2{padding:8px;font-size:13px}.store-row{font-size:12px;padding:7px 8px}.result-tools{padding:8px}}
.po-input-row{display:flex;gap:8px;align-items:stretch}.po-input-row input{min-width:0;flex:1}.scan-button{display:flex;align-items:center;justify-content:center;gap:6px;flex-shrink:0;min-height:48px;padding:10px 12px;border:1px solid #b4cdbb;border-radius:12px;background:#edf5ee;color:#174d3c;font:inherit;font-size:13px;cursor:pointer}.qr-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.qr-heading h2{margin:0}.qr-heading button{min-height:44px;min-width:44px}.qr-actions{display:flex;align-items:center;flex-wrap:wrap;gap:6px}.qr-actions label{font-weight:400}#qr-dialog{max-height:90dvh;overflow-y:auto}#qr-video{display:block;width:100%;max-height:48dvh;aspect-ratio:4/3;object-fit:cover;background:#13241e;border-radius:12px;margin-top:12px}#qr-status{font-size:14px;min-height:46px}@media(max-width:380px){.scan-button{padding:9px;gap:4px;font-size:12px}.qr-actions .button{width:auto;flex:1;font-size:12px}}
