.paper-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:16px 0}.paper-grid article{background:white;border:1px solid #bbd0db;border-radius:18px;padding:12px}.paper-grid img{width:100%;height:180px;object-fit:contain}.capture-actions{display:flex;gap:10px;flex-wrap:wrap}#video{width:100%;max-height:50vh;background:#142b38;border-radius:16px}#jobs .tile{cursor:pointer}[hidden]{display:none!important}button:disabled{opacity:.5}
/* Ritpapieren: compacte balkjes i.p.v. grote tegels (v321/322) */
#archive-toggle{margin:4px 0 2px}
#jobs{display:flex;flex-direction:column;gap:10px;margin:16px 0}
#jobs .job-bar{display:flex;flex-direction:row;align-items:stretch;width:100%;background:#fff;border:1px solid #b6ccd9;border-left:5px solid #075071;border-radius:12px;overflow:hidden;box-shadow:0 2px 6px #173e5410}
#jobs .job-bar:hover{border-color:#ec7840}
#jobs .job-main{flex:1;display:flex;flex-direction:column;align-items:flex-start;text-align:left;background:transparent;color:#103a50;border:0;border-radius:0;padding:12px 14px;min-height:0;box-shadow:none}
#jobs .job-main strong{font-size:16px}
#jobs .job-main small{display:block;color:#405d6c;font-size:13px;font-weight:400;margin-top:2px}
#jobs .job-archive{flex:0 0 auto;border:0;border-left:1px solid #e0e9ee;border-radius:0;background:#eef5f8;color:#075071;font-weight:700;font-size:13px;padding:0 14px}
#jobs .job-archive:hover{background:#dfeaf0}
/* Papieren-status per balk (v323) */
#jobs .job-bar.has-docs{border-left-color:#14713e}
#jobs .job-bar.no-docs{border-left-color:#d98a1f}
#jobs .job-main .doc-status{margin-top:4px;font-weight:700}
#jobs .job-bar.has-docs .doc-status{color:#14713e}
#jobs .job-bar.no-docs .doc-status{color:#c9771a}

/* v328 scanner + PDF-only sharing */
.paper-grid small{display:block;color:#405d6c;font-size:12px;margin:5px 0}
.paper-grid article button{font-size:13px;margin:5px 4px 0 0}
.pdf-actions{display:flex;flex-wrap:wrap;gap:10px;margin:10px 0 6px}
.download-pdf{display:inline-block;padding:12px 18px;border:1px solid #007eb4;border-radius:10px;color:#075071;background:#e7f4f9;font-weight:700;text-decoration:none}
.paper-corner-dialog{border:0;border-radius:16px;padding:18px;width:min(96vw,780px);max-height:94vh;overflow:auto}
.paper-corner-dialog::backdrop{background:#0c2732bb}
.paper-corner-dialog h2{margin:4px 0 10px;font-size:20px}
.paper-corner-dialog p{font-size:14px}
.paper-corner-stage{position:relative;display:block;width:100%;line-height:0;touch-action:none;margin:14px 0;background:#142b38}
.paper-corner-stage img{display:block;width:100%;height:auto;object-fit:contain}
.paper-corner-stage .corner{position:absolute;transform:translate(-50%,-50%);width:38px;height:38px;min-width:38px;min-height:38px;padding:0;border:3px solid #fff;border-radius:50%;background:#d26918;color:white;font-size:16px;touch-action:none;user-select:none;box-shadow:0 1px 8px #0008}
.paper-corner-actions{display:flex;justify-content:flex-end;gap:10px}

/* v337: standaard native fotocamera, duidelijk resultaat na iedere opname */
.capture-feedback{padding:12px 14px;margin:10px 0;border:1px solid #98c8a3;background:#e8f6ec;color:#115d32;border-radius:12px;font-weight:750}
.capture-feedback.capture-error{background:#fff1eb;color:#8c3325;border-color:#ecb19b}
.camera-fallback{padding:10px 0;margin-bottom:12px;color:#476371;font-size:14px}
.camera-fallback summary{cursor:pointer;color:#075071;text-decoration:underline}
.camera-fallback p{font-size:13px}
#camera:not([hidden]){display:flex;flex-wrap:wrap;gap:10px}
#camera video{flex:1 0 100%}

/* v340: complete ride card + ISO-week export */
#jobs .job-main .stop-line{padding-left:10px;border-left:2px solid #d5e6ed;margin:5px 0 0 3px}
#jobs .job-main .ride-date{font-weight:650;color:#075071;margin-top:5px}
.week-export{margin:24px 0;padding:18px;border:1px solid #bad1dc;border-radius:18px;background:white}
.week-export h2{font-size:19px;margin:0 0 9px}.week-export p{line-height:1.55;color:#456171;font-size:14px}
.week-export label,.trip-meta label{display:block;margin:10px 0 5px;font-weight:650;color:#153c50}
.week-export input,.trip-meta input,.trip-meta textarea{display:block;box-sizing:border-box;width:100%;max-width:440px;border:1px solid #b1c8d4;border-radius:9px;padding:12px;background:white;color:#153c50;font:inherit}
.week-export button{margin:9px 8px 0 0}.week-results{margin:10px 0;font-size:14px;color:#355362;line-height:1.5}
.week-results ul{padding-left:20px}.week-results li{margin:5px 0}
.trip-stops{padding:12px 14px;margin:13px 0;border:1px solid #cfdee5;border-radius:12px;background:#f0f7fa}
.trip-stops div{margin-top:6px}.trip-meta{border:1px solid #c1d3dd;border-radius:12px;padding:13px;margin:14px 0}
.trip-meta legend{font-weight:700}.trip-meta textarea{max-width:100%;resize:vertical}
@media(max-width:650px){.week-export{padding:13px}}

#jobs .job-copy{flex:0 0 auto;padding:0 10px;border:0;border-left:1px solid #e0e9ee;border-radius:0;background:#f2f8fa;color:#075071;font-size:12px;font-weight:650;max-width:93px;white-space:normal}
@media(max-width:550px){#jobs .job-copy{max-width:68px;padding:0 7px;font-size:11px}#jobs .job-archive{padding:0 8px}}

/* Een leesbare volledige ritkaart, knoppen pas onder alle laad- en losadressen. */
#jobs .job-bar{display:flex;flex-direction:column}
#jobs .job-main{box-sizing:border-box;width:100%;padding:14px;flex:auto}
#jobs .job-actions{display:flex;flex-wrap:nowrap;border-top:1px solid #dfebf0}
#jobs .job-actions .job-copy,#jobs .job-actions .job-archive{flex:1 1 50%;max-width:none;min-height:48px;padding:10px 8px;border:0;border-left:0;border-radius:0;font-size:13px}
#jobs .job-actions .job-archive{border-left:1px solid #dfebf0}
#jobs .job-main .stop-line{padding-left:10px}

.cmr-doc-actions{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}
.cmr-open-btn{border-radius:10px;padding:12px 14px;font:inherit;font-weight:700;cursor:pointer;background:#075071;color:#fff;border:1px solid #075071;min-height:46px}
.cmr-open-btn.secondary{background:#e4eff3;color:#075071;border-color:#bfd3dc}
.doc-note{font-size:14px;line-height:1.45;color:#335965}

/* v390: vrachtbrieven (CMR) van deze rit */
.cmr-copies{margin:10px 0 14px;display:grid;gap:8px}
.cmr-copies h3{margin:0}
.cmr-copy{background:#edf5f8;border:1px solid #bfdae3;border-radius:10px;padding:10px 12px;display:grid;gap:4px}
.cmr-copy small{color:#365362}
.cmr-copy-links{display:flex;flex-wrap:wrap;gap:6px 14px}
.cmr-copy-links a{font-weight:650;color:#075071}

/* v446: van waar naar waar */
.job-route{display:block;margin:4px 0 6px;font-size:17px;font-weight:800;color:#075071;line-height:1.3}
#job-route{font-size:19px;margin:2px 0 8px}
.job-main .job-route{font-size:15px;margin:3px 0}

/* v446: Ritpapieren overzichtelijker */
.jobs-toolbar{display:flex;flex-wrap:wrap;gap:8px;margin:2px 0 12px}
.jobs-toolbar .chip,.jobs-toolbar #archive-toggle{margin:0;min-height:44px;padding:8px 14px;border-radius:999px;font-size:15px;font-weight:700;background:#e4eff3;color:#075071;border:1px solid #bfd3dc;box-shadow:none}
.jobs-toolbar .qr-scan-btn{background:#17313E;color:#fff;border-color:#17313E}
.jobs-hint{color:#435a66;font-size:14px;margin:10px 2px 4px}
#jobs{display:grid!important;grid-template-columns:1fr!important;gap:12px}
#jobs .job-main{gap:4px;padding:14px 16px}
#jobs .job-top{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%}
#jobs .job-top strong{font-size:20px;color:#17313e}
#jobs .job-pill{flex:0 0 auto;border-radius:999px;padding:4px 10px;font-size:13px;font-weight:800}
#jobs .job-pill.ok{background:#e7f6ee;color:#14713e}#jobs .job-pill.todo{background:#fff1e3;color:#b4610f}
#jobs .job-main .job-route{font-size:17px;font-weight:800;color:#075071;margin:2px 0;line-height:1.3}
#jobs .job-main .job-route.unknown{font-weight:600;color:#6b818c;font-size:15px}
#jobs .job-main .job-meta{font-size:14px;color:#435a66;margin:0}
#jobs .job-main .job-open{align-self:flex-end;margin-top:4px;font-weight:800;color:#075071;font-size:15px}
.cmr-return{display:grid;gap:6px;margin:14px 0}
.cmr-return .cmr-open-btn{display:flex;align-items:center;justify-content:center;width:100%;box-sizing:border-box;text-decoration:none;text-align:center;font-size:17px}
.cmr-return small{color:#435a66;font-size:14px;text-align:center}
#editor .editor-qr{min-height:40px;padding:6px 14px;border-radius:999px;font-size:14px;margin:0 0 10px}
#editor > h2#job-title{margin-bottom:2px}
#job-route.unknown{font-size:15px;font-weight:600;color:#6b818c}
/* v446 */
.job-note-fold{margin-top:4px}.job-note-fold summary{font-size:13px;font-weight:700;color:#0b5c8a;cursor:pointer}
.job-note-fold small{display:block;white-space:pre-wrap;margin-top:4px}
