/* Shared TOB interaction layer, version 1.9. */
.tob-save-panel{padding:10px 16px;background:#fff;border-bottom:1px solid #ead3df;color:#45464b;font:14px/1.5 Arial,sans-serif;display:flex;gap:8px 24px;flex-wrap:wrap}.tob-save-panel strong{color:#8d1248}.tob-save-panel[data-error=true]{background:#fff0ed;color:#9c1235}.tob-draft-banner{background:#fff6dc;border:1px solid #dfbf6c;border-radius:12px;padding:14px;margin:12px 0;display:flex;flex-wrap:wrap;gap:12px;align-items:center}.tob-draft-banner button,.tob-action{min-height:44px;background:#f7eaf1;color:#8d1248;border:1px solid #ead3df;padding:10px 14px;border-radius:10px;font:700 15px Arial,sans-serif;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center}.tob-action.primary{background:#b01759;color:#fff}.tob-archive{background:white;padding:18px;border:1px solid #ead3df;border-radius:14px;margin:14px 0}.tob-archive h2,.tob-archive h3{color:#8d1248}.tob-archive-group{border-top:1px solid #ddd;margin-top:14px;padding-top:10px}.tob-archive-row{display:flex;gap:12px;align-items:center;justify-content:space-between;padding:12px 0;border-bottom:1px solid #eee;overflow-wrap:anywhere}.tob-archive-row small{display:block;color:#666;margin:5px 0}.tob-archive-thumbs{display:flex;flex-wrap:wrap;gap:6px}.tob-archive-thumbs img{width:68px;height:60px;object-fit:cover;border-radius:6px}.tob-search{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}.tob-search input{flex:1;min-width:140px;padding:12px;border:1px solid #ccc;border-radius:10px;font-size:16px}.tob-dialog{border:0;border-radius:16px;padding:22px;max-width:min(640px,94vw);width:94vw;max-height:90dvh;overflow:auto;color:#2f3135;box-shadow:0 12px 60px #0004}.tob-dialog::backdrop{background:#0008}.tob-dialog h2{margin-top:0;color:#8d1248}.tob-dialog .actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.tob-dialog textarea{width:100%;padding:10px;border:1px solid #ccc;border-radius:8px;min-height:80px;font-size:16px}.tob-dialog canvas{max-width:100%;height:auto;display:block;touch-action:none;border:1px solid #ccc}.tob-dialog li{margin:8px 0}.tob-photo-mark{font-size:12px!important;min-height:38px!important;margin-top:6px!important;width:100%}.tob-review-note{padding:10px;border-left:4px solid #b01759;background:#fff8fb;color:#333;margin:10px 0;white-space:pre-wrap}.tob-save-panel button{min-height:36px}.tob-home-navigation{z-index:900!important;position:sticky!important;top:0;gap:8px!important}.tob-company-name{min-width:0;overflow-wrap:anywhere}
button,a.btn,.photo-btn{min-height:44px}button:focus-visible,a:focus-visible{outline:3px solid #2869a1;outline-offset:2px}input,select,textarea{font-size:16px;max-width:100%}main{min-width:0}img{max-width:100%}
@media(max-width:600px){main{padding:12px!important}.tob-home-navigation{padding:8px!important;min-height:60px!important}.tob-home-navigation a{padding:10px!important;font-size:14px!important;min-height:44px!important}.tob-company-name{width:100%;font-size:12px!important}.tob-save-panel{font-size:13px;padding:10px}.tob-archive-row{align-items:flex-start;flex-direction:column}.record{flex-wrap:wrap}.toolbar{flex-wrap:wrap}header{padding:12px!important;flex-wrap:wrap}.brand{min-width:0}.brand h1{overflow-wrap:anywhere;font-size:21px}table{max-width:100%}.card{padding:14px!important}}
@media print{.tob-save-panel,.tob-draft-banner,.tob-dialog,.tob-photo-mark,.tob-archive,.tob-search{display:none!important}.tob-review-note{display:block!important;break-inside:avoid}}
.tob-defect-actions{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}.tob-defect-actions button[aria-pressed=true]{background:#b01759;color:#fff}.tob-open-drafts{display:flex;gap:10px;flex-wrap:wrap}.tob-draft-banner small{display:block}

/* Keep intrinsic header and flex widths inside narrow phone viewports. */
@media(max-width:600px){.brand,.brandwrap,.topinner,.top{min-width:0;max-width:100%;flex-wrap:wrap}.brand>div,.brandwrap>div,.top>div{min-width:0;max-width:100%}.topinner{padding:12px!important}h1{overflow-wrap:anywhere}.record-item{flex-wrap:wrap}.record-item>div{min-width:0;overflow-wrap:anywhere}}

body[data-tob-page=home] .module{min-width:0;overflow-wrap:anywhere}
@media(max-width:900px){body[data-tob-page=home] .grid{grid-template-columns:minmax(0,1fr)}}
.grid>*{min-width:0}.record>div{min-width:0;overflow-wrap:anywhere}
@media screen and (max-width:600px){.summary-table{display:block;width:100%;max-width:100%;overflow-x:auto;overscroll-behavior-x:contain}.card{min-width:0}#reportContent>.card>div:first-child{flex-wrap:wrap}#reportContent h2{overflow-wrap:anywhere}}
@media(max-width:600px){h2,h3{overflow-wrap:anywhere}}
