html,body,#root{width:100%;min-height:100%;margin:0;padding:0}body{font-family:Arial,Helvetica,sans-serif;overflow-y:auto}*{box-sizing:border-box}html,body,#root{background:#eef3f8;min-height:100%;margin:0;font-family:Arial,Helvetica,sans-serif}body{overflow-y:auto}button,input,textarea{font:inherit}button{color:#fff;cursor:pointer;background:#1565c0;border:0;border-radius:12px;padding:12px 14px;font-weight:800}button:disabled{opacity:.65;cursor:not-allowed}input,textarea{color:#102033;background:#fff;border:1px solid #cad5e2;border-radius:12px;outline:none;width:100%;padding:13px 14px}textarea{resize:vertical;min-height:84px}label{color:#0b2b50;gap:6px;font-size:13px;font-weight:900;display:grid}.app{background:#eef3f8;min-height:100vh}.header{background:#061b33;border-bottom:4px solid #ff7a00;justify-content:center;align-items:center;width:100%;height:155px;padding:0;display:flex;overflow:hidden}.header-brand{justify-content:center;align-items:center;width:100%;height:100%;display:flex;overflow:hidden}.logo{object-fit:contain;object-position:center;width:100%;height:100%;display:block}.header-subtitle{color:#1565c0;text-align:center;margin:12px 0 18px;font-size:18px;font-weight:900}.page-label{color:#1565c0;text-align:center;letter-spacing:.02em;text-shadow:none;background:#eef3f8;padding:12px 12px 4px;font-size:20px;font-weight:950}.center-main{place-items:center;min-height:calc(100vh - 100px);padding:18px;display:grid}.login-card{background:#fff;border-radius:18px;width:100%;max-width:430px;padding:28px;box-shadow:0 12px 30px #08223f24}.login-badge{color:#fff;background:#ff7a00;border-radius:999px;margin-bottom:14px;padding:7px 13px;font-size:12px;font-weight:900;display:inline-flex}.login-card h2{color:#0b2b50;margin:0 0 8px}.subtitle{color:#5d6b7a;margin:0 0 20px}.field-shell{max-width:1180px;margin:0 auto;padding:18px 18px 92px}.top-bar{justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:18px;display:flex}.top-bar h2{color:#0b2b50;margin:0 0 4px;font-size:28px}.top-bar p{color:#526173;margin:2px 0;font-size:14px}.top-actions{gap:10px;display:flex}.snapshot-grid{grid-template-columns:repeat(5,1fr);gap:12px;margin-bottom:16px;display:grid}.snapshot-card,.panel{background:#fff;border:1px solid #dce5ef;border-radius:18px;box-shadow:0 8px 22px #0b2b5014}.snapshot-card{border-left:6px solid #1565c0;padding:18px}.snapshot-card.danger{border-left-color:#d93636}.snapshot-card span{color:#5d6b7a;margin-bottom:8px;font-size:13px;font-weight:900;display:block}.snapshot-card strong{color:#0b2b50;font-size:28px}.panel{margin-bottom:16px;padding:18px}.panel-title{justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.panel-title h3{color:#0b2b50;margin:0;font-size:22px}.panel-title button,.panel-title .toggle-line{width:auto;font-size:13px}.attention-panel{border-top:6px solid #d93636}.attention-row,.job-row,.report-row,.gps-row{color:#102033;text-align:left;background:#f4f7fb;border:1px solid #dce5ef;grid-template-columns:1.2fr 1fr 1.4fr;align-items:center;gap:10px;width:100%;margin-bottom:10px;display:grid}.job-row,.report-row,.gps-row{grid-template-columns:1.5fr 1fr}.attention-row strong,.job-row strong,.report-row strong,.gps-row strong{color:#0b2b50;display:block}.attention-row span,.job-row span,.report-row span,.gps-row span{color:#425466;margin-top:4px;display:block}.attention-row small,.job-row small{color:#d93636;font-weight:900;display:block}.empty-text{color:#536273;background:#f4f7fb;border-radius:12px;margin:0;padding:18px}.form-layout{gap:0;display:grid}.form-grid,.production-input-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.gps-card{background:#f4f7fb;border:1px solid #dce5ef;border-radius:14px;justify-content:space-between;align-items:center;gap:14px;margin-top:16px;padding:14px;display:flex}.gps-card strong,.gps-card span{display:block}.gps-card span{color:#526173;margin-top:4px}.score-pill{color:#fff;border-radius:999px;justify-content:center;min-width:64px;padding:8px 10px;font-weight:900;display:inline-flex}.score-pill.good{background:#198754}.score-pill.warn{background:#ff9f1c}.score-pill.bad{background:#d93636}.checklist-list{gap:12px;display:grid}.check-card{background:#f8fafc;border:1px solid #dce5ef;border-radius:16px;padding:14px}.check-top,.photo-input-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.check-top{margin-bottom:12px}.status-button{width:auto;min-width:95px}.status-ok{background:#198754}.status-issue{background:#d93636}.status-pending{background:#6b7280}.photo-picker{color:#fff;cursor:pointer;background:#0b2b50;border-radius:12px;width:auto;padding:12px 14px;display:inline-flex;position:relative;overflow:hidden}.photo-picker input{opacity:0;cursor:pointer;position:absolute;inset:0}.thumb-row{flex-wrap:wrap;gap:10px;margin-top:12px;display:flex}.thumb-row button{background:0 0;border:1px solid #cad5e2;border-radius:12px;width:76px;height:76px;padding:0;overflow:hidden}.thumb-row img{object-fit:cover;width:100%;height:100%;display:block}.production-group{border-top:1px solid #e4ebf3;margin-top:14px;padding-top:14px}.production-group h4,.production-summary-group h4{color:#0b2b50;margin:0 0 12px}.period-tabs{grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:16px;display:grid}.period-tabs button{color:#0b2b50;text-transform:capitalize;background:#dbe8f6}.period-tabs button.active{color:#fff;background:#1565c0}.toggle-line{color:#0b2b50;align-items:center;gap:8px;display:inline-flex}.toggle-line input{width:auto}.production-summary-group{border-top:1px solid #e4ebf3;margin-top:14px;padding-top:14px}.production-summary-group h4{justify-content:space-between;display:flex}.total-row{border-bottom:1px solid #eef2f7;justify-content:space-between;padding:10px 0;display:flex}.total-row span{color:#425466}.total-row strong{color:#0b2b50}.photo-job-card{background:#f4f7fb;border:1px solid #dce5ef;border-radius:14px;margin-bottom:12px;padding:14px}.photo-job-card strong,.photo-job-card span{display:block}.photo-job-card span{color:#526173;margin-top:4px}.report-row button,.gps-row a{justify-self:end}.gps-row a{color:#fff;background:#1565c0;border-radius:12px;padding:12px 14px;font-weight:900;text-decoration:none}.save-bar{z-index:5;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#eef3f8f0;grid-template-columns:1fr 1fr auto;gap:10px;padding:12px 0;display:grid;position:sticky;bottom:76px}.submit-button{background:#198754}.secondary-button{background:#6b7280}.bottom-nav{z-index:20;background:#fff;border-top:1px solid #cad5e2;grid-template-columns:repeat(6,1fr);gap:6px;width:min(1180px,100%);padding:8px;display:grid;position:fixed;bottom:0;left:50%;transform:translate(-50%);box-shadow:0 -8px 22px #0b2b501f}.bottom-nav button{color:#fff;background:#1565c0;padding:12px 8px;font-size:13px}.photo-overlay{z-index:50;background:#000000e6;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.photo-overlay img{object-fit:contain;border-radius:14px;max-width:100%;max-height:100%}@media (width<=820px){.header{height:96px;padding:0 6px}.logo{object-fit:cover;object-position:center center;width:100%;height:100%;max-height:none}.page-label{padding:9px 8px 2px;font-size:15px}.header-subtitle{display:none}.field-shell{padding:14px 12px 98px}.top-bar{flex-direction:column}.top-actions{grid-template-columns:1fr 1fr;width:100%;display:grid}.snapshot-grid{grid-template-columns:repeat(2,1fr)}.snapshot-card{padding:14px}.snapshot-card strong{font-size:24px}.attention-row,.job-row,.report-row,.gps-row,.form-grid,.production-input-grid{grid-template-columns:1fr}.gps-card,.check-top,.photo-input-row{flex-direction:column;align-items:stretch}.gps-card button,.status-button,.photo-picker{text-align:center;justify-content:center;width:100%}.save-bar{grid-template-columns:1fr;bottom:82px}.bottom-nav{grid-template-columns:repeat(3,1fr)}.bottom-nav button{padding:10px 6px;font-size:12px}}.top-bar h2,.dashboard h2{color:#1565c0}.bottom-nav button{color:#fff;background:#1565c0}.bottom-nav button.active{color:#fff;background:#ff7a00}
