:root{--navy:#0A2D68;--blue:#1E63C6;--green:#16A34A;--orange:#F59E0B;--red:#DC2626;--gray:#64748B;--bg:#F5F8FC;--line:#D9E2EF;--text:#12223D}*{box-sizing:border-box}body{margin:0;background:var(--bg);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans JP",sans-serif;color:var(--text)}button,input,select,textarea{font:inherit}button{cursor:pointer;border:0}.login{min-height:100vh;display:grid;place-items:center;padding:22px}.login-card{width:min(100%,420px);background:white;padding:36px;border-radius:20px;box-shadow:0 20px 55px #0a2d6820}.brand{width:210px;max-width:100%;display:block;margin:0 auto 28px}.login h1{font-size:24px;text-align:center;margin:0 0 8px}.muted{color:var(--gray);font-size:13px}.field{display:grid;gap:7px;margin:15px 0}.field label{font-weight:650;font-size:14px}.field input,.field select,.field textarea{border:1px solid var(--line);border-radius:9px;padding:11px;background:white;width:100%}.field textarea{min-height:72px;resize:vertical}.primary,.secondary,.danger{padding:12px 16px;border-radius:9px;font-weight:750}.primary{background:var(--blue);color:#fff}.secondary{background:#EAF2FF;color:var(--blue)}.danger{background:#FEE2E2;color:var(--red)}.login .primary{width:100%;margin-top:10px}.demo-box{padding:12px;background:#EFF6FF;color:#174E9C;border-radius:9px;margin-top:18px;font-size:13px;line-height:1.55}.shell{min-height:100vh;display:flex}.sidebar{width:240px;background:var(--navy);color:white;padding:20px 13px;position:fixed;height:100vh}.sidebar img{width:170px;display:block;margin:0 auto 28px;filter:brightness(0) invert(1)}.nav-btn{background:transparent;color:#DCEAFF;text-align:left;width:100%;padding:12px;border-radius:9px;margin:3px 0;font-weight:650}.nav-btn.active,.nav-btn:hover{background:#ffffff20;color:white}.content{margin-left:240px;padding:26px;width:100%;max-width:1480px}.topbar{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:22px}.topbar h1{margin:0;font-size:25px}.language{border:1px solid var(--line);padding:8px;border-radius:8px;background:white}.cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.card{background:#fff;border:1px solid #E7EDF5;border-radius:13px;padding:18px;box-shadow:0 4px 14px #0a2d6808}.card .number{font-size:28px;color:var(--navy);font-weight:800;margin-top:7px}.panel{background:white;border:1px solid #E7EDF5;border-radius:13px;padding:19px;margin-top:17px}.panel h2{font-size:17px;margin:0 0 15px}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;font-size:14px}th,td{padding:11px;text-align:left;border-bottom:1px solid var(--line);white-space:nowrap}th{color:var(--gray);font-weight:700}.badge{display:inline-block;padding:4px 9px;border-radius:999px;font-size:12px;font-weight:700}.green{background:#DCFCE7;color:#15803D}.orange{background:#FEF3C7;color:#B45309}.red{background:#FEE2E2;color:#B91C1C}.blue{background:#DBEAFE;color:#1D4ED8}.split{display:grid;grid-template-columns:1fr 1fr;gap:17px}.quick{display:flex;gap:10px;flex-wrap:wrap}.empty{padding:30px;text-align:center;color:var(--gray)}.driver-shell{max-width:620px;margin:auto;min-height:100vh;background:#fff}.driver-head{height:60px;background:var(--navy);color:white;display:flex;align-items:center;padding:0 18px;justify-content:space-between;position:sticky;top:0;z-index:2}.driver-head img{height:31px;filter:brightness(0) invert(1)}.driver-body{padding:18px 16px 95px}.stepper{display:flex;gap:5px;align-items:center;margin:5px 0 18px}.step{width:24px;height:24px;border-radius:50%;background:#D8E3F2;display:grid;place-items:center;font-size:12px;font-weight:800}.step.active{background:var(--blue);color:white}.step.done{background:var(--green);color:white}.line{height:2px;background:#D8E3F2;flex:1}.form-card{border:1px solid var(--line);border-radius:13px;padding:15px;margin:12px 0}.form-card h3{font-size:16px;margin:0 0 12px}.row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.actionbar{position:fixed;bottom:0;left:0;right:0;padding:12px;background:#fff;border-top:1px solid var(--line);display:flex;gap:10px;justify-content:center;z-index:3}.actionbar>*{width:min(290px,48%)}.check-item{padding:11px 0;border-bottom:1px solid #E8EEF6;display:flex;align-items:center;justify-content:space-between;gap:10px}.check-item:last-child{border-bottom:0}.problem{border-color:#F9A8A8;background:#FFF8F8}.trip{border-left:4px solid var(--blue)}.trip-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.trip-title{font-weight:800;color:var(--navy)}.notice{padding:12px;border-radius:9px;margin:12px 0;font-size:14px}.notice.info{background:#EFF6FF;color:#1E4C9A}.notice.success{background:#F0FDF4;color:#15803D}.notice.warn{background:#FFF7E5;color:#A75C00}.modal-backdrop{position:fixed;inset:0;background:#00163a77;z-index:10;display:grid;place-items:center;padding:16px}.modal{background:white;border-radius:15px;width:min(100%,620px);max-height:90vh;overflow:auto;padding:21px}.modal h2{margin:0 0 12px}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}.report-preview{background:#EFF3F8;padding:20px;overflow:auto}.a4{width:794px;min-height:1123px;margin:auto;background:#fff;padding:40px;color:#111;font-family:"Noto Serif JP",serif;box-shadow:0 3px 14px #0002}.pdf-title{text-align:center;font-size:25px;font-weight:800;border-bottom:2px solid;padding-bottom:9px}.pdf-top{display:flex;justify-content:space-between;margin:8px 0}.pdf-grid{display:grid;grid-template-columns:repeat(3,1fr);border:2px solid #111;margin:12px 0}.pdf-grid div{padding:6px;border-right:1px solid #111;min-height:54px}.pdf-grid div:last-child{border-right:0}.pdf-label{font-size:12px;display:block;text-align:center}.pdf-value{font-size:16px;display:block;text-align:center;margin-top:7px}.pdf-table{font-size:11px;margin:12px 0}.pdf-table th,.pdf-table td{border:1px solid #111;padding:4px;white-space:normal;text-align:center;height:27px}.pdf-table th{color:#111}.inspection{font-size:10px}.inspection td{height:18px}.pdf-notes{border:2px solid #111;height:82px;padding:5px;font-size:12px}.hidden{display:none}@media(max-width:820px){.sidebar{display:none}.content{margin-left:0;padding:17px}.cards{grid-template-columns:repeat(2,1fr)}.split{grid-template-columns:1fr}.topbar h1{font-size:20px}.a4{transform:scale(.42);transform-origin:top left;margin-bottom:-650px}.report-preview{height:500px}}@media print{body>*:not(#print-root){display:none!important}#print-root{display:block!important}.a4{box-shadow:none;margin:0;width:794px;min-height:1123px}@page{size:A4 portrait;margin:0}}
