.serial-field{border:1px solid var(--line,#d8e2df);border-radius:12px;padding:14px;margin:8px 0}.serial-field legend{font-weight:700;padding:0 8px}.serial-field textarea{min-height:65px;font-family:monospace}.unit-choices{display:grid;grid-template-columns:repeat(auto-fill,minmax(165px,1fr));gap:8px;max-height:260px;overflow:auto;padding:12px 0}.unit-choices label,.revision-days label,.column-options label{display:flex;align-items:center;gap:8px}.unit-choices input,.revision-days input,.column-options input{width:auto}.unit-card{display:flex;gap:24px;align-items:center;margin-bottom:20px}.unit-card img{width:125px;height:125px}.unit-serials{max-height:220px;overflow:auto;min-width:160px}.unit-serials button{display:block;font:12px monospace;padding:6px}.column-options,.revision-days{display:flex;flex-wrap:wrap;gap:12px;padding:12px}.column-picker{margin:12px 0}.revision-position{border:1px solid #d8e2df;border-radius:12px;padding:16px;margin:14px 0}.revision-piece{display:flex;gap:18px;align-items:center;border-bottom:1px solid #eef2f0;padding:7px 0}.revision-piece select{min-width:130px}.revision-piece code{min-width:130px}.revision-plan{display:flex;flex-wrap:wrap;align-items:center;gap:15px;padding:14px;border-bottom:1px solid #eef2f0}.revision-plan p{margin:0}.revision-plan .actions{margin-inline-start:auto}.revision-users{min-height:110px}.revision-checked{display:flex;gap:10px;align-items:center;margin-top:10px}.revision-checked input{width:auto}#scan-modal{width:min(540px,95vw)}#scanner-reader{width:100%;min-height:80px;margin:14px 0}#scanner-reader video{max-height:360px;object-fit:cover}.upload-label{padding:9px;border:1px solid #ccd9d5;border-radius:8px}.upload-label input{max-width:230px}.revision-extra-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.revision-extra-grid .full{grid-column:1/-1}@media(max-width:600px){.unit-card{gap:12px}.unit-card img{width:90px;height:90px}.revision-extra-grid{grid-template-columns:1fr}.revision-piece{gap:8px;justify-content:space-between}.revision-piece code{min-width:0}.revision-plan .actions{margin-inline-start:0}}
#scan-modal{max-height:94dvh;overflow:auto}#scanner-reader{position:relative;background:#102a24;border-radius:12px;overflow:hidden;margin-inline:auto}#scanner-reader[hidden]{display:none}#scanner-reader video{display:block;width:100%;height:auto;max-height:none;object-fit:contain}.scan-guide{position:absolute;inset:20% 6%;border:2px solid #8decc3;border-radius:8px;box-shadow:0 0 0 1px #153e30;pointer-events:none}.scan-source-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:stretch}.scan-source-actions .upload-label{font-size:12px;display:flex;flex-direction:column;gap:5px;flex:1;min-width:150px;background:#f6faf7}.scan-source-actions input{font-size:11px;width:100%;max-width:100%}.scan-intro,.scan-help,.scan-capability-note,.scan-tips{font-size:12px;color:#526f64;line-height:1.7}.scan-controls{padding:12px;background:#f0f7f3;border:1px solid #d7e7dd;border-radius:12px}.scan-controls[hidden],.scan-controls [hidden]{display:none}.scan-controls .actions{gap:8px}.scan-controls button{font-size:12px;padding:9px}.scan-device{margin-bottom:10px}.scan-camera-info{font-size:11px;color:#587367}.scan-zoom{margin-top:12px}.scan-zoom span{display:flex;justify-content:space-between;align-items:center}.scan-zoom input{width:100%;min-height:34px;accent-color:#227a60;cursor:pointer}.scan-zoom output{font:700 17px monospace;color:#185a43}.scan-tips{margin:8px 0 16px}.scan-tips summary{cursor:pointer;font-weight:600}#scan-status{font-size:13px;padding:10px;border-radius:8px;background:#edf5f0}#scan-modal .modal-content{overflow:visible}
.revision-piece code{font-family:monospace;font-size:11px;direction:ltr;white-space:nowrap;flex:0 0 auto;min-width:0}.revision-piece select{width:auto;flex:1;min-width:95px}
.unit-card img{width:180px;height:180px;flex-shrink:0}.revision-details{display:grid;grid-template-columns:repeat(2,minmax(110px,1fr));gap:8px 18px;margin:10px 0;font-size:12px;min-width:220px}.revision-details div{min-width:0}.revision-details dt{color:var(--muted,#536762)}.revision-details dd{margin:2px 0;white-space:pre-wrap;overflow-wrap:anywhere}.revision-details div:last-child{grid-column:1/-1}.revision-serials{min-width:140px;max-width:290px}.revision-serials div{max-height:170px;overflow:auto;padding:7px 0;white-space:normal}.revision-serials code{display:inline-block;font-size:12px;margin:3px}.revision-calendar{flex-wrap:wrap;max-height:190px;overflow:auto}.revision-calendar button{font-size:12px}@media(max-width:600px){.unit-card{flex-direction:column;align-items:flex-start}.unit-card img{width:180px;height:180px}.revision-details{grid-template-columns:1fr 1fr}}
.revision-result-pieces{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:16px 0}.revision-result-pieces>div>strong{display:block;margin-bottom:7px}.revision-result-pieces .revision-serials{max-width:100%;min-width:0}@media(max-width:600px){.revision-result-pieces{grid-template-columns:1fr}}
.revision-settings{margin:16px 0}.revision-settings>summary,.revision-filter-details>summary{cursor:pointer;padding:12px}.revision-filter-details[open]{min-width:240px}.revision-filter-details label{margin:8px 0}.revision-quantity{font-size:24px}.revision-stock-total{padding:14px;background:#edf5f1;border-radius:10px;font-size:18px}.revision-zero,.revision-extras{margin:12px 0;padding:12px;border:1px solid #d8e2df;border-radius:10px}.revision-zero summary,.revision-extras summary{cursor:pointer}.revision-zero input[type=checkbox]{width:auto}
.revision-overview{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:20px 0}.revision-overview>div{background:#fff;border:1px solid #dce5e1;border-radius:14px;padding:18px}.revision-overview span{display:block;color:#60736b;font-size:13px}.revision-overview strong{display:block;font-size:28px;margin-top:5px;color:#173f32}.revision-task-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px;margin:20px 0}.revision-task-card{min-width:0;border:1px solid #dce5e1;border-radius:16px;background:#fff;padding:20px;box-shadow:0 3px 14px #183e2f06}.revision-task-card h3{font-size:18px;margin:16px 0 6px;overflow-wrap:anywhere}.revision-task-meta{display:flex;justify-content:space-between;gap:10px;align-items:center;font-size:12px;color:#536c61;flex-wrap:wrap}.revision-card-stock{display:flex;justify-content:space-between;gap:10px;align-items:center;margin:18px 0;padding:12px;border-radius:10px;background:#f0f6f3}.revision-card-stock strong{font-size:27px;white-space:nowrap}.revision-card-stock small{font-size:13px;font-weight:400}.revision-card-stock>span{font-size:12px}.revision-task-card .actions{margin-top:15px}.revision-task-card .revision-serials{max-width:100%}.revision-sample{display:flex;gap:15px;align-items:flex-end}.revision-sample label{flex:1}#revision-progress{background:#f1f5f9;padding:12px;border-radius:10px;font-weight:600;margin-bottom:10px}.revision-settings{border:1px solid #dce5e1;border-radius:12px;background:#fff}.revision-settings>summary{font-weight:600}.revision-settings>.notice{margin:0 16px 16px}@media(max-width:600px){.revision-overview{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.revision-overview>div{padding:13px}.revision-overview strong{font-size:23px}.revision-task-grid{grid-template-columns:minmax(0,1fr)}.revision-task-card{padding:15px}.revision-sample{align-items:stretch;flex-direction:column}}
.revision-calendar-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap}.revision-calendar-heading h2{margin:0 0 6px}.revision-calendar-heading p{color:#5f726b;margin:0}.revision-day-calendar,.revision-open-day{padding:22px;border:1px solid #dae4df;background:#fff;border-radius:16px;margin:20px 0}.revision-month-nav{display:flex;align-items:flex-end;justify-content:center;gap:15px;padding:22px 0}.revision-month-nav label{min-width:160px}.revision-days-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(145px,1fr));gap:12px}.revision-day-card{display:flex;flex-direction:column;align-items:stretch;text-align:start;background:#f7faf8;color:#173f32;border:1px solid #dae4df;border-radius:12px;padding:15px;gap:5px;min-width:0;box-shadow:none}.revision-day-card:hover{background:#ecf5ef;border-color:#6b9982}.revision-day-card:focus-visible{outline:3px solid #297f79;outline-offset:3px}.revision-day-card.is-today{border:2px solid #287d70}.revision-day-card.is-complete{background:#eaf6ec}.revision-day-card.is-empty{background:#fafafa;color:#78857f}.revision-day-name{font-size:13px;font-weight:700}.revision-day-number{font-size:29px;line-height:1.25}.revision-day-date{font-size:11px;text-align:start}.revision-day-load{font-size:12px;margin-top:5px}.revision-day-status{font-size:11px;min-height:17px}.revision-day-card progress{height:5px;width:100%;accent-color:#287d70;margin-top:5px}.revision-open-day .actions{margin-top:12px}.revision-count-comparison{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:15px 0}.revision-count-comparison>div{display:flex;flex-direction:column;gap:5px;padding:14px;border-radius:10px;background:#f0f6f3}.revision-count-comparison span{font-size:12px;color:#546c60}.revision-count-comparison strong{font-size:27px;color:#173f32}.revision-count-comparison small{font-size:11px;color:#63766d}.revision-match-result{padding:10px;border-radius:8px;font-size:13px}.revision-match-result.matches{background:#e8f5eb;color:#1d6637}.revision-match-result.differs{background:#fff3df;color:#8b580d}#revision-progress .revision-count-comparison{margin-top:0}#revision-progress p{margin-bottom:0}@media(max-width:600px){.revision-day-calendar,.revision-open-day{padding:14px}.revision-days-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.revision-month-nav{gap:5px;flex-wrap:wrap}.revision-month-nav label{min-width:140px}.revision-month-nav button{font-size:11px;padding:8px}.revision-day-card{padding:12px}.revision-count-comparison>div{padding:10px}}
