.op-sheet{background:#fff;color:#111;max-width:1100px;margin:0 auto;padding:28px 32px;font-family:Yu Gothic,Meiryo,sans-serif;box-shadow:0 3px 20px #0001}.op-sheet>h1{text-align:center;font-size:23px;letter-spacing:.18em;margin:0 0 16px}.op-created{text-align:right;margin-bottom:12px;font-size:13px}.op-table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:12px}.op-table td,.op-table th{border:1px solid #333;padding:7px 5px;vertical-align:middle;overflow-wrap:anywhere}.op-table th{font-weight:600;text-align:center}.op-table input,.op-table textarea{width:100%;min-width:0;box-sizing:border-box;border:1px solid #ddd;border-radius:2px;background:#fff;color:#111;padding:5px;font:inherit}.op-table textarea{resize:vertical;white-space:pre-wrap}.op-table input[type=time]{padding:3px 1px}.op-heading{background:#f0f2f5}.op-label{display:inline-block;min-width:105px}.op-table td:has(.op-label) input{width:calc(100% - 115px)}.op-inline{display:flex;gap:5px}.op-inline input:first-child{width:65%}.op-inline input:last-child{width:35%}.op-footer{text-align:center;font-size:11px;margin:15px 0 0}.op-date-print{display:none}@media(max-width:720px){.op-sheet{padding:12px;overflow-x:auto}.op-table{min-width:760px}.op-toolbar{gap:10px}}@page{size:A4 landscape;margin:12mm}@media print{body{background:#fff!important}.op-page{padding:0!important;margin:0!important;max-width:none!important}.op-toolbar,.sidebar,.bottom-nav,.mobile-nav,header,.topbar{display:none!important}.op-sheet{box-shadow:none;padding:0;max-width:none}.op-table{font-size:10px}.op-table td,.op-table th{padding:5px 3px}.op-table input,.op-table textarea{border:0;padding:0;outline:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;resize:none;color:#000}.op-created input{display:none}.op-date-print{display:inline}.op-sheet>h1{font-size:20px}.op-table tr{break-inside:avoid}}.op-delete{display:block;margin:3px auto 0;font-size:10px;padding:2px 6px;color:#a33;border:1px solid #d9aaaa;border-radius:3px;background:#fff;cursor:pointer}.op-add{padding:7px 16px;background:#eaf2ff;border:1px solid #9bbde8;border-radius:5px;color:#185c9e;cursor:pointer;font-weight:600}.op-safety-head{font-weight:800;margin:0 0 4px;line-height:1.4}.op-sheet{width:100%;box-sizing:border-box}@media print{@page{size:A4 landscape;margin:10mm}html,body,#root{width:100%!important;min-width:0!important;margin:0!important;padding:0!important;overflow:visible!important}.op-page{display:block!important;width:100%!important;min-width:0!important;overflow:visible!important}.op-sheet{width:100%!important;max-width:277mm!important;min-width:0!important;margin:0 auto!important;padding:0!important;overflow:visible!important;box-sizing:border-box!important}.op-table{width:100%!important;min-width:0!important;max-width:100%!important;table-layout:fixed!important;font-size:9px!important}.op-table td,.op-table th{padding:3px 2px!important;overflow:hidden!important;overflow-wrap:anywhere!important;word-break:break-word!important}.op-table input,.op-table textarea{max-width:100%!important;min-width:0!important;font-size:9px!important;box-sizing:border-box!important;overflow:hidden!important}.op-table textarea{height:auto;min-height:40px}.op-table input[type=date],.op-table input[type=time]{font-size:8px!important}.op-inline{flex-wrap:wrap}.op-inline input:first-child,.op-inline input:last-child{width:100%!important}.op-no-print{display:none!important}.op-sheet>h1{font-size:17px!important;margin:0 0 7px!important}.op-created{margin:0 0 5px!important}.op-footer{margin-top:6px!important}}.op-datetime{display:block;width:100%;min-width:0}.op-print-value{display:none}@media print{.op-footer{display:none!important}.op-datetime{display:flex!important;align-items:center;justify-content:center;min-height:15px;text-align:center}.op-datetime>input{display:none!important}.op-print-value{display:block!important;text-align:center;width:100%;font:inherit;white-space:nowrap}.op-created .op-datetime{display:none!important}.op-created .op-date-print{display:inline!important}.op-inline{display:flex!important;flex-wrap:nowrap!important;align-items:center;justify-content:center}.op-inline .op-datetime{width:50%!important}}@media print{.op-text-field{display:block!important;min-width:0!important;width:100%!important}.op-text-field>input{display:none!important}.op-text-field>.op-print-value{display:block!important;width:100%!important;white-space:pre-wrap!important;overflow-wrap:anywhere!important;word-break:break-word!important;text-align:left!important;line-height:1.4!important}.op-table td,.op-table th{overflow:visible!important;vertical-align:middle!important}.op-table tr{height:auto!important}.op-inline .op-datetime:first-child{width:72%!important}.op-inline .op-datetime:last-child{width:28%!important}.op-inline .op-print-value{white-space:normal!important;overflow-wrap:anywhere!important}}.op-plate-label{display:inline-block;white-space:nowrap;word-break:keep-all;overflow-wrap:normal;font-size:clamp(8px,.95vw,11px)}.op-center-field,.op-center-field input,.op-center-field .op-print-value{text-align:center!important}.op-center-field .op-text-field>.op-print-value{text-align:center!important}@media print{.op-plate-label{font-size:8px!important;white-space:nowrap!important;word-break:keep-all!important;overflow-wrap:normal!important;letter-spacing:-.35px}.op-center-field,.op-center-field input,.op-center-field .op-print-value{text-align:center!important}.op-center-field .op-text-field>.op-print-value{text-align:center!important}}.op-contract-row{display:flex;align-items:center;gap:5px;width:100%;min-width:0}.op-contract-row .op-label{flex:0 0 105px;min-width:0;white-space:nowrap}.op-contract-row .op-text-field{display:block;flex:1 1 0;min-width:0}.op-contract-row .op-text-field input{display:block;width:100%!important;box-sizing:border-box}@media print{.op-contract-row .op-text-field .op-print-value{display:block;white-space:pre-wrap;overflow-wrap:anywhere;text-align:left}}.op-center-field .op-text-field,.op-center-field .op-text-field input{text-align:center!important}.op-contract-row .op-text-field,.op-contract-row .op-text-field input{text-align:left!important}.op-date-time-row{display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:6px!important;flex-wrap:nowrap!important}.op-date-time-row>.op-datetime:first-child{flex:0 1 72%!important;width:auto!important}.op-date-time-row>.op-datetime:last-child{flex:0 1 28%!important;width:auto!important}.op-date-time-row .op-datetime,.op-date-time-row .op-print-value{text-align:left!important;justify-content:flex-start!important}@media print{.op-center-field .op-text-field>.op-print-value{text-align:center!important}.op-contract-row .op-text-field>.op-print-value{text-align:left!important}.op-date-time-row,.op-date-time-row .op-datetime{justify-content:flex-start!important}.op-date-time-row .op-print-value{text-align:left!important}}.op-edit-date-time{display:flex;align-items:center;gap:6px;width:100%;min-width:0}.op-edit-date-time>.op-datetime:first-child{flex:1 1 65%;min-width:0}.op-edit-date-time>.op-datetime:last-child{flex:1 1 35%;min-width:0}.op-print-date-time{display:none}@media print{.op-edit-date-time{display:none!important}.op-print-date-time{display:block!important;width:100%;white-space:nowrap!important;text-align:left!important;font-size:9px!important;letter-spacing:-.2px}}*{box-sizing:border-box}:root{font-family:Segoe UI,Microsoft YaHei,Noto Sans JP,Arial,sans-serif;color:#30445c;background:#f5f8fb;font-synthesis:none;text-rendering:optimizeLegibility}html,body,#root{margin:0;min-height:100%;width:100%}body{min-width:0;background:#f5f8fb}button,input,select,textarea{font:inherit}button{cursor:pointer}.app{min-height:100vh;background:#f5f8fb}.header{height:58px;background:#fff;border-bottom:1px solid #e1e8ef;display:flex;align-items:center;justify-content:space-between;padding:0 22px}.brand{display:flex;align-items:center;gap:10px}.brand-icon{width:30px;height:30px;display:grid;place-items:center;border:1px solid #d4e6f7;background:#f1f7fd;color:#287bc8;border-radius:6px;font-size:16px}.brand-title{font-size:15px;font-weight:700;color:#243851}.brand-subtitle{font-size:10px;color:#95a2b1;margin-top:1px}.header-right{display:flex;align-items:center;gap:18px;font-size:11px;color:#7c8999}.admin{font-weight:600;color:#4d6075}.nav{height:42px;background:#fff;border-bottom:1px solid #e1e8ef;display:flex;padding-left:18px;gap:4px}.nav button{border:0;background:transparent;color:#718399;padding:0 16px;font-size:11px;border-bottom:2px solid transparent}.nav button.active{color:#287bc8;font-weight:700;border-bottom-color:#287bc8}.content{padding:17px 12px 28px}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:15px;margin:0 2px 12px}.page-head h1{margin:0;color:#20344d;font-size:19px}.page-head p{margin:5px 0 0;color:#8a98a8;font-size:10px}.toolbar{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.month-switch,.toolbar select,.search,.primary,.outline{height:32px;border:1px solid #d5e0eb;border-radius:5px;background:#fff;color:#52667e;font-size:10px}.month-switch{display:flex;overflow:hidden;align-items:center}.month-switch button{width:27px;height:30px;border:0;background:#fff;color:#6d8197;font-size:16px}.month-switch strong{min-width:82px;text-align:center;font-weight:650}.toolbar select{padding:0 8px;min-width:84px}.search{display:flex;align-items:center;width:148px;padding:0 8px}.search input{border:0;outline:0;width:100%;font-size:10px}.search span{font-size:15px;color:#8a9aac}.primary,.outline{padding:0 11px;font-weight:600}.primary{background:#2b80d2;color:#fff;border-color:#2b80d2}.outline{color:#4f718f}.danger{color:#c8555d;border-color:#ecc7cb}.schedule-card,.panel{background:#fff;border:1px solid #dfe7ef;border-radius:6px;overflow:hidden;box-shadow:0 2px 8px #2c48680a}.table-wrap{width:100%;overflow:auto;max-height:calc(100vh - 157px)}table{width:max-content;min-width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed}th,td{border-right:1px solid #e2e9f0;border-bottom:1px solid #e2e9f0}.resource-head{position:sticky;left:0;top:0;z-index:8;width:150px;min-width:150px;height:44px;text-align:left;padding:6px 9px;background:#edf5fb;color:#354d66;font-size:10px}.resource-head small{display:block;color:#8999aa;font-size:8px;margin-top:2px;font-weight:500}.day-head{position:sticky;top:0;z-index:7;width:66px;min-width:66px;height:44px;background:#edf5fb;text-align:center;color:#40566f;font-size:9px}.day-head small{display:block;color:#8191a2;font-size:8px;margin-top:2px;font-weight:500}.day-head.weekend-head{background:#f7f8fa}.group td{height:26px;background:#e9f2f9;color:#3a5670;padding:0 9px;font-size:9px;font-weight:750;cursor:pointer}.group td span{display:inline-block;width:14px;color:#718ba2;font-size:12px}.group td em{font-style:normal;color:#9aaabb;margin-left:6px;font-weight:500}.resource{position:sticky;left:0;z-index:5;width:150px;min-width:150px;height:64px;background:#fff;padding:6px 23px 5px 9px;vertical-align:top}.resource-number{font-size:10px;line-height:13px;font-weight:750;color:#273d55}.resource-model{font-size:9px;color:#718297;line-height:12px}.resource-extra{font-size:7.5px;color:#8795a5;line-height:10px;max-width:115px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.arrow{position:absolute;right:7px;top:25px;color:#6b9fd0;font-size:16px}.cell{width:66px;min-width:66px;height:64px;padding:2px;background:#fff;text-align:center;cursor:pointer}.cell:hover{background:#f7fbff}.cell.weekend{background:#fbfcfe}.assignment{height:58px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:2px;padding:2px;background:transparent}.customer,.off-text{font-size:9px;font-weight:700;color:#38516b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.driver{font-size:8px;color:#718297;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.off-text{color:#8d959d;font-weight:500}.footer{height:31px;background:#fafcfe;display:flex;align-items:center;justify-content:space-between;padding:0 10px;color:#9aa7b5;font-size:9px}.panel{padding:0}.panel-title{height:45px;padding:0 15px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #e4ebf2;font-size:11px;color:#40566f}.panel-title span{font-size:9px;color:#96a3b1}.list-table{width:100%;border-collapse:collapse;table-layout:auto}.list-table th,.list-table td{height:38px;padding:0 10px;font-size:10px;text-align:left}.list-table th{background:#f6f9fb;color:#718196;font-weight:600}.list-table td{color:#425970}.right{text-align:right!important}.link-btn{border:0;background:transparent;color:#2b80d2;font-size:10px}.status{padding:3px 7px;border:1px solid #d9e2ea;border-radius:10px;font-size:9px}.status.draft{color:#7c8a98}.status.submitted{color:#2c7db8}.status.confirmed{color:#3b8660}.invoice{padding:22px;min-height:560px}.invoice-head,.invoice-meta{display:flex;justify-content:space-between}.invoice-head h2{margin:0 0 6px;font-size:22px;letter-spacing:5px}.invoice-head p,.invoice-head>div:last-child,.invoice-meta{font-size:10px;color:#718196}.invoice-meta{margin:28px 0 14px;padding:10px 0;border-top:1px solid #dfe7ef;border-bottom:1px solid #dfe7ef}.invoice-total{text-align:right;padding:18px;font-size:12px}.invoice-total strong{font-size:18px;margin-left:25px}.stamp{margin:40px 20px 0 auto;width:74px;height:74px;border:2px solid #9a5d67;border-radius:50%;display:grid;place-items:center;color:#9a5d67;font-size:10px}.mask{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;background:#19293b45;display:grid;place-items:center;padding:20px}.modal{width:min(520px,94vw);max-height:92vh;overflow:auto;background:#fff;border-radius:9px;border:1px solid #dce5ee;box-shadow:0 18px 55px #1e355038}.form-modal{width:min(640px,94vw)}.report-modal{width:min(760px,95vw)}.modal-title{display:flex;justify-content:space-between;align-items:flex-start;padding:17px 18px 13px;border-bottom:1px solid #e6edf3}.modal-title small{font-size:9px;color:#6c91b1;font-weight:700}.modal-title h2{font-size:17px;color:#23374e;margin:4px 0 0}.modal-title button{border:0;background:transparent;color:#8593a3;font-size:23px;line-height:1}.details{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:#f0f3f7;padding:13px 17px}.details div{min-height:55px;background:#fff;padding:9px;display:flex;flex-direction:column;gap:5px}.details span,.readonly-box span{font-size:9px;color:#8a98a8}.details b,.readonly-box b{font-size:11px;color:#334b64}.form-grid,.report-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px;padding:16px 18px 8px}.form-grid label,.report-grid label{display:flex;flex-direction:column;gap:5px;color:#687c91;font-size:9px}.form-grid input,.form-grid select,.report-grid input,.report-grid textarea{height:34px;border:1px solid #d7e1eb;border-radius:5px;padding:0 8px;background:#fff;color:#435a72;font-size:10px;outline:0}.report-grid textarea{height:60px;padding-top:8px;resize:vertical}.wide{grid-column:1/-1}.form-hint{padding:0 18px 10px;color:#7d8d9e;font-size:9px}.check{flex-direction:row!important;align-items:center;gap:6px}.check input{width:14px!important;height:14px!important}.modal-actions{display:flex;justify-content:flex-end;gap:7px;padding:12px 18px;border-top:1px solid #e6edf3}.readonly-box{padding:8px;border:1px solid #e1e8ef;border-radius:5px;display:flex;flex-direction:column;gap:5px;background:#f8fafc}.calc-box{display:flex;margin:3px 18px 10px;border:1px solid #e1e8ef;border-radius:6px;overflow:hidden}.calc-box div{flex:1;padding:10px;background:#fafcfd;border-right:1px solid #e1e8ef;display:flex;flex-direction:column;gap:5px}.calc-box div:last-child{border-right:0}.calc-box span{font-size:9px;color:#8a98a8}.calc-box b{font-size:12px;color:#334b64}.calc-box .total{background:#f4f8fb}.calc-box .total b{font-size:15px;color:#2376b8}.toast{position:fixed;left:50%;bottom:28px;transform:translate(-50%);z-index:50;background:#263d55;color:#fff;border-radius:6px;padding:9px 16px;font-size:10px;box-shadow:0 8px 25px #0000002e}@media(max-width:1350px){.page-head{align-items:flex-start;flex-direction:column}.toolbar{width:100%;justify-content:flex-end}}@media print{.header,.nav,.page-head button,.toolbar,.modal,.mask,.toast{display:none!important}.content{padding:0}.panel,.invoice{box-shadow:none;border:0}.app{background:#fff}body{min-width:0}.invoice{min-height:auto}}.login-page{min-height:100vh;display:grid;place-items:center;background:#f5f8fb;padding:20px}.login-card{width:min(420px,100%);background:#fff;border:1px solid #dfe7ef;border-radius:12px;padding:34px;box-shadow:0 12px 40px #233c5a14}.login-logo{width:46px;height:46px;display:grid;place-items:center;border-radius:10px;background:#edf5fb;color:#287bc8;font-size:24px;margin-bottom:12px}.login-card h1{margin:0;color:#20344d;font-size:23px}.login-card>p{color:#8a98a8;font-size:12px;margin:7px 0 22px}.login-card label,.form-grid label{display:flex;flex-direction:column;gap:6px;color:#53677d;font-size:11px;font-weight:600}.login-card input,.form-grid input,.form-grid select,.form-grid textarea{width:100%;border:1px solid #d5e0eb;border-radius:6px;padding:9px 10px;outline:0;background:#fff;color:#30445c}.login-card input:focus,.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus{border-color:#77aee0}.login-card form{display:grid;gap:14px}.login-btn{width:100%;height:42px;margin-top:3px}.link-btn{border:0;background:none;color:#287bc8;font-size:11px;margin:16px auto 0;display:block}.error-box{background:#fff1f1;color:#b84f58;border:1px solid #f0c8cc;border-radius:6px;padding:8px;font-size:11px}.logout-btn{border:1px solid #d9e3ed;background:#fff;border-radius:5px;padding:5px 9px;color:#6d7e90;font-size:10px}.loading{min-height:100vh;display:grid;place-items:center;color:#718399;background:#f5f8fb}.dashboard-grid{display:grid;grid-template-columns:repeat(4,minmax(180px,1fr));gap:12px}.dash-card{position:relative;text-align:left;background:#fff;border:1px solid #dfe7ef;border-radius:8px;padding:22px;min-height:125px;color:#30445c}.dash-card strong{display:block;font-size:15px}.dash-card span{display:block;margin-top:8px;color:#8a98a8;font-size:11px}.dash-card i{position:absolute;right:16px;bottom:14px;font-style:normal;color:#287bc8;font-size:22px}.quick-add{display:flex;gap:6px}.quick-add input{border:1px solid #d5e0eb;border-radius:5px;padding:7px 9px;font-size:10px}.list-table{width:100%;border-collapse:collapse;background:#fff}.list-table th,.list-table td{padding:10px 12px;border-bottom:1px solid #e4ebf2;text-align:left;font-size:10px}.list-table th{background:#f5f8fb;color:#5f7389}.list-table td{color:#40566f}.empty{text-align:center!important;color:#9aa7b5!important;padding:30px!important}.mobile-head{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:12px}.mobile-head h1{margin:0;font-size:19px;color:#20344d}.mobile-head p{margin:5px 0 0;color:#8a98a8;font-size:10px}.mobile-notice{padding:10px 12px;background:#eef6fd;border:1px solid #d8eaf8;border-radius:7px;color:#57708a;font-size:11px;margin-bottom:10px}.driver-cards{display:grid;gap:8px}.driver-card{display:grid;grid-template-columns:48px 1fr 20px;align-items:center;text-align:left;background:#fff;border:1px solid #dfe7ef;border-radius:8px;padding:12px;box-shadow:0 2px 7px #2c48680a}.driver-card-date{font-size:12px;font-weight:700;color:#287bc8}.driver-card b,.driver-card strong,.driver-card span{display:block}.driver-card b{font-size:10px;color:#8090a0}.driver-card strong{font-size:13px;color:#30445c;margin:2px 0}.driver-card span{font-size:10px;color:#718297}.driver-card em{font-style:normal;font-size:20px;color:#8aa0b5}.readonly-note{font-size:10px;color:#8a98a8}.report-entry{margin-bottom:12px;padding:15px}.report-entry .panel-title{margin:-15px -15px 15px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:15px}.form-grid .wide{grid-column:1/-1}.form-grid textarea{min-height:80px;resize:vertical}.check{flex-direction:row!important;align-items:center;gap:6px!important;font-weight:500!important}.check input{width:auto}.form-hint{padding:0 15px 10px;color:#8a98a8;font-size:10px}.modal-actions{display:flex;justify-content:flex-end;gap:7px;padding:12px 15px;border-top:1px solid #e4ebf2}.modal-actions button{min-height:32px}.details{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:#e4ebf2;margin:0}.details>div{background:#fff;padding:11px 13px}.details span,.details b{display:block}.details span{font-size:9px;color:#8a98a8}.details b{font-size:11px;color:#30445c;margin-top:3px}.mobile-detail{max-width:460px}.mask{z-index:50}.nav{overflow:auto;white-space:nowrap}@media(max-width:800px){body{font-size:14px}.header{height:54px;padding:0 12px}.brand-subtitle{display:none}.header-right{gap:7px}.header-right>span{max-width:80px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nav{height:44px;padding-left:6px}.nav button{padding:0 11px;font-size:11px}.content{padding:12px 10px 80px}.page-head{align-items:flex-start;flex-direction:column}.page-head h1{font-size:18px}.toolbar{width:100%;overflow:auto;flex-wrap:nowrap;padding-bottom:2px}.toolbar .search{min-width:120px}.dashboard-grid{grid-template-columns:1fr 1fr}.dash-card{min-height:105px;padding:15px}.dash-card strong{font-size:13px}.list-table{min-width:620px}.panel{overflow:auto}.form-grid{grid-template-columns:1fr}.form-grid .wide{grid-column:auto}.modal{width:calc(100% - 20px);max-height:90vh;overflow:auto}.form-modal{width:calc(100% - 20px)}.mobile-head{align-items:center}.driver-mobile-page{padding-bottom:80px}.login-card{padding:25px}.login-page{padding:12px}}@media(max-width:480px){.dashboard-grid{grid-template-columns:1fr}.header-right .admin{display:none}.brand-title{font-size:13px}.driver-card{padding:11px}.details{grid-template-columns:1fr 1fr}.month-switch{flex-shrink:0}}:root{font-size:16px}body{font-size:14px}.header{height:64px;padding:0 24px}.brand-title{font-size:17px}.brand-subtitle{font-size:10px}.brand-icon{font-size:20px}.header-right{gap:12px}.header-right>span{font-size:13px}.header-right .admin{font-size:11px;padding:5px 9px}.logout-btn{font-size:12px;padding:7px 11px}.nav{height:50px;padding:0 14px}.nav button{font-size:13px;padding:0 15px}.content{padding:22px 24px 42px}.page-head h1{font-size:24px}.page-head p{font-size:13px}.toolbar{gap:8px}.toolbar select,.toolbar .search input{height:40px;font-size:13px}.toolbar button{font-size:13px;min-height:40px}.month-switch button{width:40px;height:40px;font-size:23px}.month-switch strong{font-size:15px}.primary,.outline{font-size:13px;min-height:40px;padding:0 15px}.panel{border-radius:9px}.panel-title{font-size:14px;height:52px}.list-table th,.list-table td{font-size:13px;padding:13px 14px;height:48px}.list-table th{font-size:12px}.master-add{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:flex-end}.master-add input,.master-add select,.quick-add input{height:40px;border:1px solid #d5e0eb;border-radius:6px;padding:0 11px;font-size:13px;min-width:120px}.master-add .primary{white-space:nowrap}.table-delete{border:1px solid #efc9ce;background:#fff8f8;color:#b4515c;border-radius:6px;padding:6px 10px;font-size:12px;cursor:pointer}.table-delete:hover{background:#fff0f0}.table-scroll{overflow:auto}.list-panel,.schedule-card{overflow:hidden}.schedule-table-wrap{overflow:auto;max-height:calc(100vh - 255px)}.schedule-table{min-width:1180px;border-collapse:separate;border-spacing:0}.schedule-table th,.schedule-table td{font-size:12px}.schedule-table thead th{position:sticky;top:0;z-index:3;background:#fbfdff}.schedule-table .resource-head{position:sticky;left:0;z-index:5;min-width:160px}.schedule-table .resource{position:sticky;left:0;z-index:2;background:#fff;min-width:160px}.schedule-table .day-head{min-width:74px;height:54px}.schedule-table .cell{min-width:74px;height:58px}.schedule-table .group td{font-size:13px;height:42px}.resource-number{font-size:14px}.resource-model,.resource-extra{font-size:11px}.assignment .customer,.assignment .driver{font-size:12px}.footer{font-size:11px}.driver-schedule-page .schedule-table-wrap{max-height:calc(100vh - 255px)}.mobile-schedule-note{display:flex;gap:10px;align-items:center;padding:12px 14px;margin:0 0 12px;border:1px solid #d8eaf8;background:#eef6fd;border-radius:8px;color:#57708a;font-size:12px}.mobile-schedule-note b{font-size:13px;color:#36566f}.mobile-schedule-note span{color:#70859a}.form-grid label,.report-grid label{font-size:12px}.form-grid input,.form-grid select,.form-grid textarea,.report-grid input,.report-grid textarea{font-size:13px;min-height:40px}.modal-title{padding:20px 20px 16px}.modal-title small{font-size:11px}.modal-title h2{font-size:20px}.details span{font-size:11px}.details b,.modal-actions button{font-size:13px}.dash-card strong{font-size:17px}.dash-card span{font-size:12px}.search span{font-size:16px}@media(max-width:800px){.header{height:58px;padding:0 10px}.brand-title{font-size:14px}.nav{height:46px}.nav button{font-size:12px;padding:0 12px}.content{padding:14px 10px 80px}.page-head h1{font-size:20px}.page-head p{font-size:12px}.toolbar{justify-content:flex-start;overflow-x:auto;flex-wrap:nowrap}.toolbar select,.toolbar .search input{height:42px;font-size:12px}.schedule-table-wrap{max-height:none}.schedule-table{min-width:1150px}.schedule-table .resource-head,.schedule-table .resource{min-width:145px}.mobile-schedule-note{align-items:flex-start;flex-direction:column;gap:3px}.master-add{width:100%;justify-content:flex-start}.master-add input,.master-add select{flex:1 1 140px}.list-table th,.list-table td{font-size:12px;padding:11px 12px}.list-panel{overflow:hidden}.table-scroll{overflow:auto}.modal{width:calc(100% - 18px)}}.day-nav-card{display:flex;align-items:center;gap:10px;flex-wrap:wrap;background:#fff;border:1px solid #dfe7ef;border-radius:9px;padding:12px 14px;margin-bottom:12px}.day-nav-btn,.day-nav-today{min-height:42px}.selected-date{margin-left:auto;font-size:15px;font-weight:700;color:#30445c}.driver-calendar-panel{margin-bottom:12px;overflow:hidden}.calendar-title{display:flex;align-items:center;justify-content:space-between;height:auto;padding:13px 15px}.month-nav{display:flex;align-items:center;gap:8px}.month-nav button{width:34px;height:34px;border:1px solid #d7e1eb;background:#fff;border-radius:6px;font-size:20px;color:#526a82;cursor:pointer}.month-nav strong{font-size:14px;min-width:90px;text-align:center}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:1px;background:#e5ecf2;padding:1px}.weekday-row span{background:#f6f9fb;text-align:center;font-size:12px;font-weight:700;color:#6f8295;padding:9px 0}.date-grid button,.calendar-empty{min-height:48px;border:0;background:#fff;display:flex;align-items:center;justify-content:center;position:relative;cursor:pointer;color:#3d536a}.date-grid button:hover{background:#f4f8fc}.date-grid button.selected{box-shadow:inset 0 0 0 2px #3f8ed0;background:#eef6fd}.date-grid button.has-data b:after{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;margin-left:5px;background:#4b8fca;vertical-align:middle}.date-grid button i{display:none}.daily-schedule-panel{overflow:hidden}.daily-schedule-panel>.panel-title{display:flex;align-items:center;justify-content:space-between;padding:0 15px}.daily-schedule-panel>.panel-title span{font-size:12px;color:#8998a8}.daily-row{display:grid;grid-template-columns:210px 1fr 70px;gap:14px;align-items:center;padding:14px 16px;border-top:1px solid #e6edf3;background:#fff}.daily-row:hover{background:#fafcff}.daily-resource strong,.daily-resource span,.daily-resource small,.daily-main strong,.daily-main span,.daily-main small{display:block}.daily-resource strong{font-size:15px;color:#263d55}.daily-resource span{font-size:12px;color:#64788c;margin-top:2px}.daily-resource small{font-size:11px;color:#8796a6;margin-top:4px}.daily-main strong{font-size:15px;color:#30445c}.daily-main span{font-size:13px;color:#536c84;margin-top:3px}.daily-main small{font-size:11px;color:#8796a6;margin-top:4px}.daily-status{justify-self:end;padding:6px 10px;border-radius:999px;background:#edf6ef;color:#40724c;font-size:12px;font-weight:700}.daily-status.off{background:#f4f5f6;color:#89929b}.daily-empty{padding:40px 20px;text-align:center;color:#8998a8;font-size:14px}.schedule-error{margin:12px}@media(max-width:700px){.day-nav-card{gap:7px}.day-nav-btn,.day-nav-today{flex:1;min-width:0;font-size:12px;padding:0 9px}.selected-date{width:100%;margin-left:0;text-align:center;font-size:14px}.calendar-title{padding:12px}.date-grid button,.calendar-empty{min-height:44px}.daily-row{grid-template-columns:1fr;gap:7px;padding:13px}.daily-status{justify-self:start}.daily-resource strong,.daily-main strong{font-size:14px}}.current-user-name{font-size:14px;font-weight:700;color:#30445c}.day-nav-card{align-items:center}.date-picker-wrap{display:flex;align-items:center;gap:8px;margin-left:auto;font-size:12px;font-weight:700;color:#64788c}.date-picker{height:42px;border:1px solid #d5e0eb;border-radius:7px;padding:0 10px;font-size:14px;color:#30445c;background:#fff;min-width:150px}.schedule-table .day-head>div{font-size:15px;font-weight:700;line-height:1.2}.schedule-table .day-head>small{font-size:12px;font-weight:700}.schedule-table .day-head .sat{color:#2478c8}.schedule-table .day-head .sun{color:#d34b4b}.schedule-table .resource-extra{font-size:11px;font-weight:400}.schedule-table .cell{height:92px;min-width:96px;vertical-align:top}.schedule-table .assignment{padding:8px 6px;min-height:76px;display:flex;flex-direction:column;gap:3px;justify-content:flex-start}.schedule-table .assignment .customer,.schedule-table .assignment .driver{font-size:15px;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.schedule-table .assignment .customer{font-weight:600}.schedule-table .assignment .driver{font-weight:400}.assignment-business,.assignment-invoice{font-size:12px;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#5c7085}.assignment-invoice{font-size:11px;color:#7a8997}.driver-schedule-page .schedule-table-wrap{max-height:calc(100vh - 255px);overflow:auto}.driver-schedule-page .schedule-table{min-width:3200px}.driver-schedule-page .schedule-table .resource-head,.driver-schedule-page .schedule-table .resource{min-width:185px}.driver-schedule-page .schedule-table .day-head{min-width:96px;height:62px}.driver-schedule-page .schedule-table .cell{min-width:96px;height:108px}.driver-schedule-page .schedule-table .assignment{min-height:92px;padding:9px 7px}.driver-schedule-page .schedule-table .assignment .customer,.driver-schedule-page .schedule-table .assignment .driver{font-size:16px}.driver-schedule-page .assignment-business{font-size:13px}.driver-schedule-page .assignment-invoice{font-size:12px}.driver-today-page .day-nav-today{min-width:100px}.driver-today-page .selected-date{font-size:16px}@media(max-width:800px){.current-user-name{font-size:13px;max-width:100px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.date-picker-wrap{width:100%;margin-left:0;justify-content:center}.date-picker{min-width:180px}.driver-schedule-page .schedule-table{min-width:3200px}.driver-schedule-page .schedule-table .resource-head,.driver-schedule-page .schedule-table .resource{min-width:185px}.driver-schedule-page .schedule-table .day-head,.driver-schedule-page .schedule-table .cell{min-width:104px}.driver-schedule-page .schedule-table .cell{height:112px}.driver-schedule-page .schedule-table .assignment{min-height:96px}}@media(max-width:480px){.header-right{gap:8px}.current-user-name{max-width:90px}}.schedule-table .resource-head{width:132px;min-width:132px;padding-left:7px}.schedule-table .resource{width:132px;min-width:132px;padding:7px}.schedule-table .resource-number,.schedule-table .resource-model{font-size:16px;font-weight:400;line-height:1.25}.schedule-table .resource-model{color:#718297}.schedule-table .day-head{min-width:88px}.schedule-table .cell{min-width:88px;cursor:pointer}.schedule-table .cell:hover{background:#f3f8fc}.schedule-table .empty-cell{display:grid;place-items:center;height:72px;color:#a6b5c4;font-size:18px;opacity:.75}.schedule-table .assignment-business{font-size:13px;font-weight:400;color:#5c7085}.schedule-table .assignment-invoice{display:none}.schedule-table .group-borrowed td{background:#fff4e9}.schedule-table .group-external td{background:#f7f1fa}.schedule-table .off-strip td{background:#fff1e9;color:#a95835;font-size:11px;text-align:center;height:28px;padding:4px 3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.schedule-table .off-strip .off-label{position:sticky;left:0;z-index:2;background:#ffe4d4;text-align:left;padding-left:7px;font-weight:700;color:#a04f2e}.schedule-table .day-head.sat>div,.schedule-table .day-head.sat>small{color:#2478c8}.schedule-table .day-head.sun>div,.schedule-table .day-head.sun>small{color:#d34b4b}.schedule-table .day-head>div{font-size:18px}.schedule-table .day-head>small{font-size:12px}.table-edit{border:1px solid #c9dceb;background:#fff;color:#3275a8;border-radius:4px;padding:4px 8px;margin-right:5px;font-size:12px}.table-delete{font-size:12px}@media(max-width:800px){.schedule-table .resource-head,.schedule-table .resource{min-width:132px;width:132px}.schedule-table .day-head,.schedule-table .cell{min-width:96px}.schedule-table .cell{height:100px}.schedule-table .assignment .customer,.schedule-table .assignment .driver{font-size:15px}.schedule-table .assignment-business{font-size:13px}.schedule-table .empty-cell{height:78px}.driver-schedule-page .schedule-table .resource-head,.driver-schedule-page .schedule-table .resource{min-width:165px;width:165px}.driver-schedule-page .schedule-table .day-head,.driver-schedule-page .schedule-table .cell{min-width:104px}}.schedule-table .group-borrowed td,.schedule-table .group-external td{background:#fff!important;color:inherit}.schedule-table .group-self_vehicle td{background:#eef6fd}.schedule-table .group td{font-size:15px;font-weight:700}.schedule-table .group em{font-style:normal;font-weight:600;margin-left:3px}.schedule-table .assignment .customer{font-size:15px;font-weight:600}.schedule-table .assignment .driver{font-size:14px;font-weight:400}.daily-main-full{width:100%}.daily-line{font-size:15px;line-height:1.65;color:#30445c}.daily-line b{font-weight:700;color:#526b82}.daily-row{grid-template-columns:1fr}.daily-row .daily-main-full{display:block}@media(max-width:700px){.daily-line{font-size:14px}}.driver-bottom-nav{display:none}.daily-customer{font-size:20px;font-weight:800;line-height:1.35;color:#243b53;margin-bottom:7px}.vehicle-model-gap{margin-left:42px}.daily-vehicle{font-size:15px}.schedule-table .cell{height:82px}.schedule-table .assignment{padding:5px 6px;min-height:68px;gap:2px}.schedule-table .assignment .customer{font-size:15px;font-weight:600;line-height:1.15}.schedule-table .assignment .driver{font-size:13px;line-height:1.15}.schedule-table .assignment-business{font-size:12px;line-height:1.15}.schedule-table .off-strip td{height:28px;padding:3px 2px;cursor:pointer}.schedule-table .off-strip td:not(.off-label):hover{background:#ffe8d9}.schedule-table .day-head.sat>div,.schedule-table .day-head.sat>small{color:#2478c8!important}.schedule-table .day-head.sun>div,.schedule-table .day-head.sun>small{color:#d34b4b!important}.driver-schedule-page .schedule-table{min-width:2700px}.driver-schedule-page .schedule-table .resource-head,.driver-schedule-page .schedule-table .resource{min-width:150px;width:150px}.driver-schedule-page .schedule-table .day-head,.driver-schedule-page .schedule-table .cell{min-width:82px}.driver-schedule-page .schedule-table .cell{height:78px}.driver-schedule-page .schedule-table .assignment{min-height:64px;padding:4px 5px}.driver-schedule-page .schedule-table .assignment .customer{font-size:13px}.driver-schedule-page .schedule-table .assignment .driver{font-size:12px}.driver-schedule-page .schedule-table .assignment-business{font-size:11px}@media(max-width:800px){.app:has(.driver-bottom-nav){padding-bottom:68px}.app:has(.driver-bottom-nav) .nav{display:none}.driver-bottom-nav{position:fixed;left:0;right:0;bottom:0;height:62px;z-index:100;background:#fff;border-top:1px solid #dce5ed;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));box-shadow:0 -4px 14px #1e3c5a14}.driver-bottom-nav button{border:0;background:#fff;color:#718397;font-size:11px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;cursor:pointer}.driver-bottom-nav button.active{color:#2878b8;font-weight:700;background:#f3f8fc}.driver-nav-icon{font-size:19px;line-height:1}.driver-schedule-page .schedule-table{min-width:2350px}.driver-schedule-page .schedule-table .resource-head,.driver-schedule-page .schedule-table .resource{min-width:135px;width:135px}.driver-schedule-page .schedule-table .day-head,.driver-schedule-page .schedule-table .cell{min-width:72px}.driver-schedule-page .schedule-table .cell{height:68px}.driver-schedule-page .schedule-table .assignment{min-height:55px;padding:3px 4px}.driver-schedule-page .schedule-table .assignment .customer{font-size:12px}.driver-schedule-page .schedule-table .assignment .driver{font-size:11px}.driver-schedule-page .schedule-table .assignment-business{font-size:10px}.daily-customer{font-size:19px}}.maintenance-alert{margin:0 0 18px;padding:14px 16px;border:1px solid #efb2b2;background:#fff5f5;border-radius:10px;color:#8e2f2f}.maintenance-alert-title{font-weight:800;font-size:16px;margin-bottom:8px}.maintenance-alert-row{display:flex;gap:16px;align-items:center;padding:7px 0;border-top:1px solid #f3d5d5;font-size:13px}.maintenance-alert-row strong{color:#c52f2f}.maintenance-alert-row em{font-style:normal;color:#c52f2f;font-size:12px}.password-panel{max-width:520px;padding:22px;display:flex;flex-direction:column;gap:14px}.password-panel label{display:flex;flex-direction:column;gap:6px;font-weight:700;color:#50657a}.password-panel input{height:42px;border:1px solid #d5e0eb;border-radius:7px;padding:0 10px}.user-editor{padding:18px;margin-bottom:18px}.order-modal{max-width:760px}.unassigned-order-head td{background:#f5f7fa;font-weight:800;color:#53697e;padding:6px 8px}.unassigned-order-row .order-cell{background:#fffdf6}.order-mini{display:flex;flex-direction:column;gap:2px;text-align:left;padding:3px 4px;border-bottom:1px solid #eee5c9}.order-mini:last-child{border-bottom:0}.order-mini b{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.order-mini span,.order-mini small{font-size:10px;color:#687b8e;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.header-password-btn{height:32px;padding:0 9px;font-size:12px}.schedule-table .cell{height:76px}.schedule-table .assignment{min-height:64px;padding:5px 6px}.schedule-table .empty-cell{height:64px}@media(max-width:800px){.schedule-table .cell{height:72px}.schedule-table .assignment{min-height:60px;padding:5px}.schedule-table .empty-cell{height:60px}.maintenance-alert-row{align-items:flex-start;gap:8px;flex-wrap:wrap}.header-password-btn{font-size:11px;padding:0 7px}}.schedule-table .group-self_vehicle td,.schedule-table .group-borrowed td,.schedule-table .group-external td{background:#fff!important;color:#40566f}.schedule-table .group td{font-weight:700}.schedule-table .cell{height:68px}.schedule-table .assignment{min-height:58px;height:auto;padding:5px 4px;gap:1px}.schedule-table .assignment .customer{font-size:13px;line-height:1.1}.schedule-table .assignment .driver{font-size:11px;line-height:1.1}.schedule-table .assignment-business{font-size:10px;line-height:1.1}.schedule-table .assignment-external{font-size:10px;line-height:1.1;color:#6d5d52;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.schedule-table .assignment-remark{font-size:9px;line-height:1.1;color:#8b7b70;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.daily-customer{font-size:21px;font-weight:800;line-height:1.25;margin-bottom:5px}.daily-line{font-size:15px;line-height:1.55}.multi-date-week span{text-align:center;font-size:11px;color:#7a8a9a;padding:3px}.multi-date-grid button,.multi-date-grid span{min-height:34px;border:1px solid #e2e9ef;border-radius:5px;background:#fff}@media(max-width:800px){.driver-schedule-page .schedule-table .cell{height:56px}.driver-schedule-page .schedule-table .assignment{min-height:45px;padding:2px 3px}.driver-schedule-page .schedule-table .assignment .customer{font-size:10px}.driver-schedule-page .schedule-table .assignment .driver{font-size:9px}.driver-schedule-page .schedule-table .assignment-business,.driver-schedule-page .schedule-table .assignment-external{font-size:8px}.driver-schedule-page .schedule-table .assignment-remark{font-size:7px}}.multi-date-picker{grid-column:1/-1;border:1px solid #d8e2eb;border-radius:8px;padding:10px;background:#fbfdff}.multi-date-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.multi-date-head button{min-width:34px;padding:4px 8px}.multi-date-week,.multi-date-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.multi-date-week span{text-align:center;font-size:12px;font-weight:700;color:#6f8295;padding:5px}.multi-date-week .sun,.multi-date-grid .sun{color:#d33b3b}.multi-date-week .sat,.multi-date-grid .sat{color:#2f73c9}.multi-date-grid button,.multi-date-grid span{min-height:34px;border:1px solid #e2e9ef;border-radius:5px;background:#fff;display:flex;align-items:center;justify-content:center}.multi-date-grid button{cursor:pointer;font-size:12px}.multi-date-grid button:hover{background:#f1f7fb}.multi-date-grid button.selected{background:#2f7fb8;color:#fff;border-color:#2f7fb8;font-weight:700}.multi-date-grid button.selected.sun,.multi-date-grid button.selected.sat{color:#fff}.selected-date-list{margin-top:8px;font-size:11px;color:#607286;line-height:1.5;word-break:break-all}.single-date-picker{border:1px solid #d9dee7;border-radius:10px;padding:10px;background:#fff;max-width:320px}.single-date-picker .multi-date-head,.multi-date-picker .multi-date-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.single-date-picker .multi-date-week,.single-date-picker .multi-date-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.single-date-picker .multi-date-week span{text-align:center;font-size:12px}.single-date-picker .multi-date-grid button{border:1px solid #e3e7ee;background:#fff;border-radius:6px;padding:7px 2px;cursor:pointer}.single-date-picker .multi-date-grid button.selected{font-weight:700;outline:2px solid currentColor}.report-sheet{overflow:hidden}.report-sheet-head{display:flex;gap:28px;align-items:center;margin-bottom:12px}.report-sheet-scroll{overflow:auto}.report-excel-table{width:100%;min-width:850px;border-collapse:collapse}.report-excel-table th,.report-excel-table td{border:1px solid #cfd5dd;padding:4px;text-align:center}.report-excel-table th{background:#f4f6f8}.report-excel-table input{width:100%;min-width:70px;border:0;background:transparent;padding:6px 4px;text-align:center;box-sizing:border-box}.report-excel-table td:first-child input{min-width:110px}.expense-grid{display:grid;grid-template-columns:repeat(3,minmax(160px,1fr));gap:10px;margin-top:18px;padding:12px;border:1px solid #d9dee7;border-radius:8px}.expense-grid>b{grid-column:1/-1}.expense-grid label{display:flex;align-items:center;justify-content:space-between;gap:8px}@media(max-width:700px){.single-date-picker{max-width:none}.expense-grid{grid-template-columns:1fr}.report-excel-table{min-width:760px}}.report-driver-head{display:grid;grid-template-columns:1fr 1.4fr 1fr 1fr;gap:12px;padding:14px;border-bottom:1px solid #e5e7eb;align-items:center}.report-driver-head label{display:flex;align-items:center;gap:6px;font-weight:600}.report-driver-head input,.report-driver-head select{min-width:0;flex:1}.expense-row{display:flex;align-items:center;gap:8px;margin:8px 0}.expense-row input:first-child{flex:1}.expense-row input{width:110px}.report-total{display:flex;justify-content:flex-end;align-items:center;gap:18px;padding:16px 0;font-size:18px}.report-total strong{font-size:24px}@media(max-width:800px){.report-driver-head{grid-template-columns:1fr 1fr}.expense-row{flex-wrap:wrap}.expense-row input:first-child{width:100%}}.dashboard-today{margin-bottom:16px}.dashboard-today-list{display:grid;gap:8px}.dashboard-today-row{display:flex;gap:18px;align-items:center;padding:9px 12px;border-bottom:1px solid #eee}.dashboard-today-row>b{font-size:17px;min-width:100px}.invoice-builder{max-width:1100px}.invoice-builder .list-table input{width:100%;box-sizing:border-box}.invoice-builder .list-table td{padding:5px}.invoice-builder .report-total{margin:14px 0}.invoice-builder .table-scroll{max-height:55vh;overflow:auto}.invoice-builder-page .invoice-builder{max-width:980px;margin:auto;padding:28px;background:#fff;color:#222}.invoice-print-head{font-family:Yu Mincho,"Noto Serif JP",serif;color:#222}.invoice-title{text-align:center;font-size:27px;letter-spacing:8px;margin-bottom:26px}.invoice-parties{display:flex;justify-content:space-between;gap:40px;font-size:16px}.customer-name{border:0;border-bottom:1px solid #555;width:100px;font-size:17px;outline:0}.company-block{font-size:12px;line-height:1.7;text-align:left}.company-block b{font-size:15px}.invoice-greeting{margin:25px 0 14px;font-size:13px}.invoice-request-total{font-size:18px;font-weight:700;border-top:1px solid #222;border-bottom:1px solid #222;padding:10px 0;margin-bottom:18px}.invoice-lines{width:100%;border-collapse:collapse;table-layout:fixed}.invoice-lines th,.invoice-lines td{border:1px solid #555;padding:6px;font-size:12px;height:32px}.invoice-lines th{background:#f7f7f7}.invoice-lines th:first-child{width:50%}.invoice-lines input{width:100%;border:0;outline:0;background:transparent}.invoice-lines tfoot td{font-weight:700}.invoice-payment-note{margin:22px 0 12px;font-size:12px;line-height:1.8}.invoice-bank{font-size:11px;line-height:1.8;border-top:1px solid #555;padding-top:10px}.stamp-area{height:80px;text-align:right}.stamp-area img{max-height:78px;max-width:78px}.invoice-controls{display:flex;gap:10px;align-items:end;margin-top:15px;padding-top:15px;border-top:1px solid #e3e8ee}.invoice-controls label{display:flex;flex-direction:column;gap:5px;font-size:10px;color:#718196}.invoice-controls input{height:32px;border:1px solid #d5e0eb;border-radius:5px;padding:5px}.report-detail-table{overflow:auto;margin-top:6px}.report-detail-table .list-table{min-width:850px}.report-detail-table .list-table th,.report-detail-table .list-table td{font-size:9px;padding:6px}.no-print{display:block}@media print{.no-print{display:none!important}.invoice-builder-page{padding:0}.invoice-builder-page .invoice-builder{border:0;box-shadow:none;padding:0;max-width:none}.invoice-title{margin-top:20px}.invoice-lines input{border:0}.stamp-area{height:80px}}.invoice-builder-page .invoice-builder{position:relative;max-width:980px;margin:auto;padding:28px 34px;background:#fff;color:#222;overflow:visible}.invoice-date{text-align:right;font-family:Arial,sans-serif;font-size:12px;margin:0 0 8px;color:#222}.invoice-parties{align-items:flex-start;gap:34px}.invoice-customer{flex:1;display:flex;justify-content:flex-end;padding-top:24px}.invoice-customer>div{display:flex;align-items:baseline;justify-content:flex-end;min-width:190px}.customer-name{text-align:right;width:145px!important}.invoice-customer b{font-size:17px;font-weight:500;white-space:nowrap}.company-block{position:relative;flex:0 0 48%;font-size:12px;line-height:1.75;text-align:left;padding:0 4px;z-index:1}.company-block label{display:flex;align-items:baseline;white-space:nowrap;gap:2px;position:relative;z-index:2}.company-block input{min-width:0;flex:1;width:100%;font:inherit;color:inherit;border:0;border-bottom:1px dotted #bbb;background:transparent;padding:1px 0;outline:none}.company-block label:first-of-type input{font-weight:700;font-size:15px}.stamp-overlay{position:absolute;right:12px;top:-12px;z-index:3;pointer-events:none;opacity:.9}.stamp-overlay img{width:92px;height:92px;object-fit:contain}.invoice-request-total{text-align:center;font-size:18px;font-weight:700;border-top:1px solid #222;border-bottom:1px solid #222;padding:11px 0;margin-bottom:18px}.invoice-payment-note{margin:22px 0 12px;font-size:15px;line-height:1.9;font-weight:700}.invoice-payment-note input{font:inherit;font-weight:700;font-size:15px;width:70px;border:0;border-bottom:1px solid #777;background:transparent;outline:none}.invoice-bank{font-size:12px;line-height:1.9;border-top:1px solid #555;padding-top:10px}.bank-row{display:grid;grid-template-columns:auto minmax(80px,1.2fr) auto minmax(48px,.55fr) minmax(65px,.8fr) auto minmax(115px,1.2fr);align-items:baseline;column-gap:5px;min-height:24px;white-space:nowrap}.bank-row input{min-width:0;width:100%;font:inherit;border:0;border-bottom:1px dotted #bbb;background:transparent;padding:0;outline:none}.bank-row .bank-spacer{grid-column:3/6}.invoice-print-footer{display:none}.invoice-controls{display:flex;gap:10px;align-items:end;flex-wrap:wrap;margin-top:15px;padding-top:15px;border-top:1px solid #e3e8ee}.invoice-controls label{display:flex;flex-direction:column;gap:5px;font-size:11px;color:#718196}.invoice-controls input{height:34px;border:1px solid #d5e0eb;border-radius:5px;padding:5px}@page{size:A4;margin:12mm 14mm}@media print{html,body,#root,.app{background:#fff!important;min-height:0!important;margin:0!important;padding:0!important;width:100%!important}body{font-size:12px!important;print-color-adjust:exact;-webkit-print-color-adjust:exact}.header,.nav,.page-head,.toolbar,.modal,.mask,.toast,.no-print,.invoice-controls{display:none!important}.content,.invoice-builder-page{display:block!important;margin:0!important;padding:0!important;width:100%!important;max-width:none!important}.invoice-builder-page .invoice-builder{display:block!important;position:relative;margin:0!important;padding:0!important;border:0!important;box-shadow:none!important;max-width:none!important;width:100%!important;overflow:visible!important}.invoice-date{display:block!important;text-align:right!important;font-size:11px!important;margin:0 0 4mm!important}.invoice-title{margin:0 0 7mm!important;font-size:25px!important}.invoice-lines input,.company-block input,.bank-row input,.invoice-payment-note input{border:0!important;box-shadow:none!important;-webkit-appearance:none!important;-moz-appearance:none!important;appearance:none!important}.invoice-lines th{background:#fff!important}.invoice-request-total{text-align:center!important}.invoice-payment-note{font-size:14px!important;font-weight:700!important}.invoice-print-footer{display:block!important;position:fixed;bottom:-6mm;left:0;right:0;text-align:center;font-size:9px;color:#555}.stamp-overlay img{width:88px;height:88px}.panel{border:0!important;box-shadow:none!important}}.bank-row .bank-spacer{grid-column:5/7}.company-block,.company-block input,.invoice-bank,.bank-row input{font-weight:700}.company-block input{font-size:13px}.bank-row,.bank-row input{font-size:12px}@media print{.company-block input{font-size:12px!important}.bank-row,.bank-row input{font-size:11px!important}}.invoice-parties{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:8px!important}.invoice-customer{order:0!important;flex:none!important;display:flex!important;justify-content:flex-start!important;padding-top:0!important;text-align:left!important}.company-block{order:1!important;flex:none!important;width:100%!important;max-width:100%!important;margin-left:0!important;text-align:right!important;padding-right:4px!important}.invoice-date{display:block;text-align:right;font-family:Arial,sans-serif;font-size:12px;margin:18px 0 4px;color:#222}.invoice-payment-note{white-space:nowrap;font-size:13px!important;line-height:1.7!important;margin:5px 0 12px!important}.invoice-payment-note input{width:58px!important}@media print{.invoice-payment-note{white-space:nowrap!important;font-size:11px!important}.invoice-date{margin-top:12px!important}}.invoice-parties{display:flex!important;flex-direction:row!important;align-items:flex-start!important;justify-content:space-between!important;gap:28px!important}.invoice-customer{order:0!important;flex:1 1 48%!important;display:flex!important;justify-content:flex-start!important;padding-top:0!important;text-align:left!important}.invoice-customer>div{justify-content:flex-start!important;min-width:0!important}.customer-name{text-align:left!important}.company-block{order:1!important;flex:0 0 48%!important;width:48%!important;max-width:48%!important;margin:0!important;text-align:right!important;padding-right:4px!important}.company-block label{justify-content:flex-end!important;text-align:right!important}.company-block label input{text-align:right!important}.invoice-date{display:block;text-align:right;font-family:Yu Mincho,"Noto Serif JP",serif;font-size:15px;margin:0 0 8px;color:#222}.invoice-payment-note input[type=date]{width:155px!important;min-width:155px!important;font:inherit!important;font-weight:700!important;border:1px solid #8795a8!important;border-radius:5px!important;padding:3px 6px!important;background:#fff!important}@media print{.invoice-date{font-size:13px!important;text-align:right!important;margin:0 0 7mm!important}.invoice-parties{flex-direction:row!important;gap:20px!important}.invoice-customer{flex:1 1 48%!important;padding-top:0!important}.company-block{flex:0 0 48%!important;width:48%!important;max-width:48%!important}.invoice-payment-note input[type=date]{width:33mm!important;min-width:33mm!important;border:0!important;padding:0!important;-webkit-appearance:none!important;-moz-appearance:none!important;appearance:none!important}}@media(max-width:720px){.driver-bottom-nav button{min-width:0;padding:3px 1px;font-size:10px}.driver-bottom-nav button span:last-child{white-space:nowrap;letter-spacing:-.3px}.driver-bottom-nav .driver-nav-icon{font-size:18px}}@media print{.driver-bottom-nav,.header,.nav{display:none!important}.app:has(.driver-bottom-nav){padding-bottom:0!important}}.schedule-status-legend{display:flex;justify-content:flex-end;gap:16px;align-items:center;margin:0 2px 10px;color:#52677e;font-size:12px;flex-wrap:wrap}.schedule-status-legend span{display:inline-flex;align-items:center;gap:6px}.schedule-status-legend i{display:inline-block;width:14px;height:14px;border:1px solid #d8e2eb;border-radius:3px;background:#fff}.schedule-status-legend .legend-done{background:#fff2b8;border-color:#e9d38b}.schedule-status-legend .legend-paid{background:#d9f3de;border-color:#a6d9b2}.schedule-table td.cell.invoice-done,.schedule-table td.cell.invoice-done .assignment{background:#fff2b8!important}.schedule-table td.cell.invoice-paid,.schedule-table td.cell.invoice-paid .assignment{background:#d9f3de!important}.schedule-table td.cell.invoice-done:hover{background:#ffeb98!important}.schedule-table td.cell.invoice-paid:hover{background:#c4ebcd!important}.schedule-table .assignment{overflow-wrap:anywhere}.schedule-table .cell{transition:background-color .15s ease}.schedule-table .day-head,.schedule-table .resource-number{font-size:13px}.schedule-table .resource-model{font-size:12px;font-weight:400}.schedule-page-head{gap:12px}.schedule-table-wrap{scrollbar-gutter:stable;overscroll-behavior-x:contain}.content .toolbar button,.content .toolbar select,.content .toolbar .search,.content .toolbar .month-switch,.content .page-head button,.content .modal-actions button,.content .quick-add button,.content .table-edit,.content button.primary,.content button.outline{min-height:38px;box-sizing:border-box;border-radius:7px;font-size:12px;line-height:1.25}.content .toolbar .month-switch button{min-height:36px}.content .toolbar select,.content .toolbar .search{height:38px}.content .form-grid input,.content .form-grid select,.content .report-grid input,.content .report-grid select{min-height:38px}.content .panel,.content .schedule-card{border-radius:10px}.content .page-head{margin-bottom:16px}@media(max-width:800px){.schedule-status-legend{justify-content:flex-start;padding-left:3px;gap:12px}.content .toolbar{justify-content:flex-start}.schedule-table .day-head{font-size:12px}}@media print{.schedule-status-legend{display:none!important}}.schedule-table .resource-head,.schedule-table td.resource{width:118px!important;min-width:118px!important;max-width:118px!important;box-sizing:border-box}.schedule-table td.resource{padding:6px 5px!important}.schedule-table .resource-model{font-size:12px!important;letter-spacing:-.15px;white-space:nowrap}.schedule-table td.cell{vertical-align:middle!important}.schedule-table td.cell .assignment{display:flex!important;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:5px!important;min-height:62px;height:100%;box-sizing:border-box;padding:6px 4px!important}.schedule-table td.cell .assignment .customer{color:#00b0f0!important;font-weight:750!important;line-height:1.3!important}.schedule-table td.cell .assignment .driver{font-weight:700!important;line-height:1.3!important}.schedule-table td.cell .assignment .off-text{font-weight:700}.schedule-table td.cell .assignment-business,.schedule-table td.cell .assignment-external,.schedule-table td.cell .assignment-remark{line-height:1.3!important}@media(max-width:800px){.schedule-table .resource-head,.schedule-table td.resource,.driver-schedule-page .schedule-table .resource-head,.driver-schedule-page .schedule-table td.resource{width:118px!important;min-width:118px!important;max-width:118px!important}.schedule-table td.cell .assignment{min-height:58px;gap:4px!important;padding:5px 3px!important}}.report-filters{display:flex;flex-wrap:wrap;align-items:end;gap:12px;padding:12px 16px;border-bottom:1px solid #e2e8f0}.report-filters label{display:flex;flex-direction:column;gap:5px;font-size:13px;font-weight:600}.report-filters input,.report-filters select{height:38px;min-width:160px;padding:6px 10px;border:1px solid #cbd5e1;border-radius:7px;background:#fff}.report-filter-count{margin-left:auto;color:#64748b;font-size:13px}.receipt-sheet{max-width:900px;margin:auto;padding:28px 34px!important;color:#17212f}.receipt-title{text-align:center;font-size:32px;letter-spacing:.4em;margin:8px 0 30px}.receipt-date{text-align:right}.receipt-recipient{margin:24px 0;font-size:22px;border-bottom:1px solid #334155;padding-bottom:8px}.receipt-recipient input{max-width:280px;font-size:20px}.receipt-amount{padding:18px 12px;border-top:2px solid #1e293b;border-bottom:2px solid #1e293b;text-align:center;font-size:24px;font-weight:700}.receipt-purpose{width:100%;margin:18px 0}.receipt-items input{width:100%;min-width:50px;box-sizing:border-box}.receipt-items td:nth-child(2),.receipt-items td:nth-child(3){width:110px}.receipt-items td:nth-child(4){width:125px}.receipt-company{position:relative;width:min(440px,100%);margin:38px 0 20px auto;display:flex;flex-direction:column;align-items:stretch;gap:6px}.receipt-company input{width:100%;box-sizing:border-box}.receipt-company label{display:flex;align-items:center;gap:3px;white-space:nowrap}.receipt-company label input{min-width:0}.receipt-stamp{position:absolute;right:0;top:24px;z-index:1;pointer-events:none}.receipt-stamp img{max-width:110px;max-height:110px;opacity:.8}.receipt-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:20px}@media(max-width:650px){.receipt-sheet{padding:14px!important}.receipt-company{margin-right:0}.receipt-title{font-size:25px}.report-filter-count{margin-left:0}}@media print{@page{size:A4 portrait;margin:12mm}.receipt-page .page-head,.receipt-page .no-print{display:none!important}.receipt-page{padding:0!important;margin:0!important}.receipt-sheet{box-shadow:none!important;border:0!important;max-width:none!important;padding:0!important}.receipt-sheet input{border:0!important;background:transparent!important;padding:0!important;color:#000!important}.receipt-company,.receipt-items tr{break-inside:avoid}}.receipt-page .receipt-sheet{max-width:840px;padding:30px 42px!important;background:#fff;color:#111;font-family:Yu Mincho,MS Mincho,serif}.receipt-page .receipt-title{background:#d1d1d1;text-align:center;letter-spacing:.35em;font-size:31px;font-weight:500;margin:0 0 16px;padding:5px}.receipt-top{display:grid;grid-template-columns:1.3fr 1fr;gap:26px;align-items:start;min-height:75px}.receipt-page .receipt-recipient{display:flex;align-items:center;gap:6px;border:0;margin:0;padding:4px 0;font-size:23px}.receipt-recipient input{flex:1;min-width:0;max-width:none!important;text-align:center;font-family:inherit;font-size:22px!important}.receipt-recipient select{width:86px;font-family:inherit;font-size:20px;background:transparent;border:0}.receipt-meta>div{display:grid;grid-template-columns:90px minmax(0,1fr);align-items:center;min-height:35px;font-size:18px}.receipt-meta input{width:100%;min-width:0;font-size:17px;font-family:inherit}.receipt-date-print{display:none}.receipt-page .receipt-amount{display:grid;grid-template-columns:1fr 1.6fr 1fr;align-items:center;gap:8px;border-top:0;border-bottom:3px double #222;padding:16px 4px 12px;text-align:center;font-size:26px;font-weight:400}.receipt-page .receipt-amount strong{font-size:31px;white-space:nowrap}.receipt-purpose-row{display:flex;align-items:center;gap:12px;font-size:20px;margin:9px 0 18px;padding:0 24px}.receipt-purpose-row input{width:230px;max-width:65%;font-size:19px;font-family:inherit}.receipt-ack{font-size:20px;margin:18px 24px 35px}.receipt-breakdown{display:grid;grid-template-columns:100px minmax(0,1fr);align-items:start;margin:0 0 10px 20px;font-size:19px}.receipt-breakdown-label{padding:10px 0}.receipt-breakdown-line{display:grid;grid-template-columns:minmax(0,1fr) 55px 90px 115px auto;gap:4px;align-items:center;min-height:32px;border-bottom:1px solid #222}.receipt-breakdown-line:first-child{border-top:1px solid #222}.receipt-breakdown-line input{min-width:0;width:100%;font-family:inherit;font-size:15px;border:0!important;background:transparent}.receipt-line-total{font-size:14px;text-align:right;white-space:nowrap}.receipt-page .receipt-company{margin:65px 0 15px auto;width:min(390px,100%);font-size:17px;gap:2px}.receipt-page .receipt-company input{font-family:inherit;font-size:16px}.receipt-page .receipt-company label{font-size:16px}@media(max-width:650px){.receipt-page .receipt-sheet{padding:12px!important}.receipt-top{gap:8px}.receipt-page .receipt-title{font-size:23px}.receipt-page .receipt-amount{font-size:18px}.receipt-page .receipt-amount strong{font-size:21px}.receipt-meta>div{grid-template-columns:54px 1fr;font-size:13px}.receipt-breakdown{grid-template-columns:55px 1fr;margin-left:0}.receipt-breakdown-line{grid-template-columns:minmax(0,1fr) 35px 50px 70px auto}.receipt-breakdown-line input{font-size:12px}}@media print{@page{size:A4 portrait;margin:12mm}.receipt-page .receipt-sheet{width:100%!important;max-width:none!important;box-sizing:border-box;padding:0!important}.receipt-page .receipt-date-print{display:inline}.receipt-page .receipt-meta input[type=date]{display:none!important}.receipt-page .receipt-recipient select{-moz-appearance:none;appearance:none;-webkit-appearance:none}.receipt-page .receipt-breakdown-line{grid-template-columns:minmax(0,1fr) 55px 90px 115px}.receipt-page .receipt-breakdown-line input{overflow:visible;white-space:normal}.receipt-page .receipt-company{break-inside:avoid}}.receipt-page .receipt-amount strong{display:flex;justify-content:center;align-items:center;gap:2px;min-width:0}.receipt-page .receipt-amount-input{font:inherit;font-weight:700;text-align:center;width:100%;max-width:260px;min-width:0;border:0!important;border-bottom:1px dashed #aaa!important;background:transparent;padding:2px 4px;color:inherit}.receipt-page .receipt-breakdown-line{grid-template-columns:minmax(0,1fr) auto}.receipt-page .receipt-breakdown-line input{width:100%;text-align:left}@media print{.receipt-page .receipt-amount-input{border:0!important;-webkit-appearance:textfield;appearance:textfield;-moz-appearance:textfield}.receipt-page .receipt-amount-input::-webkit-inner-spin-button,.receipt-page .receipt-amount-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.receipt-page .receipt-breakdown-line{grid-template-columns:minmax(0,1fr)}}.sub-nav{min-height:44px;background:#f7f9fc;border-bottom:1px solid #dfe7ef;display:flex;align-items:center;gap:8px;padding:6px 20px;overflow-x:auto;white-space:nowrap}.sub-nav button{height:32px;border:1px solid transparent;border-radius:7px;background:transparent;color:#5e7288;padding:0 14px;font-size:12px;font-weight:600;cursor:pointer;transition:.15s ease}.sub-nav button:hover{background:#fff;border-color:#d8e3ed;color:#2f6f9f}.sub-nav button.active{background:#eaf4fc;border-color:#b9d9ef;color:#2478b7;box-shadow:0 1px 2px #1a4c700d}.data-management-grid{display:grid;grid-template-columns:repeat(4,minmax(180px,1fr));gap:14px}.data-management-card{position:relative;min-height:128px;text-align:left;background:#fff;border:1px solid #dfe7ef;border-radius:10px;padding:20px;cursor:pointer;box-shadow:0 3px 12px #2846640d}.data-management-card:hover{border-color:#b8d8ef;box-shadow:0 5px 16px #285a8217;transform:translateY(-1px)}.data-management-card strong{display:block;color:#27435f;font-size:15px;margin-bottom:8px}.data-management-card span{display:block;color:#7a8da0;font-size:11px;line-height:1.6;padding-right:18px}.data-management-card i{position:absolute;right:16px;bottom:13px;color:#2d83c5;font-style:normal;font-size:22px}@media(max-width:900px){.data-management-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.sub-nav{padding:6px 10px}.sub-nav button{padding:0 11px;font-size:11px}.data-management-grid{grid-template-columns:1fr}.data-management-card{min-height:105px}}@media print{.sub-nav{display:none!important}}.login-portal-switch{display:flex;justify-content:center;margin-top:16px}.login-portal-switch a{color:#287bc8;text-decoration:none;font-size:12px;font-weight:700}.login-portal-switch a:hover{text-decoration:underline}.login-security-note{margin-top:14px;padding:10px 12px;border-radius:8px;background:#f6f8fb;color:#7a8999;font-size:10px;line-height:1.6;text-align:left}.order-invoice-status{display:inline-flex;align-items:center;justify-content:center;min-width:56px;padding:5px 10px;border-radius:6px;border:1px solid #dfe7ef;font-weight:700;box-sizing:border-box}.order-invoice-status.todo{background:#fff;color:#50657a}.order-invoice-status.done{background:#fff3bf;color:#7a5c00;border-color:#eadb91}.order-invoice-status.paid{background:#dff3e4;color:#2f6f46;border-color:#bcdcc5}.order-filters{display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap;padding:14px 16px;border-bottom:1px solid #e5ebf2;background:#fbfcfe}.order-filters label{display:flex;flex-direction:column;gap:5px;font-size:13px;font-weight:700;color:#42566a}.order-filters select{min-width:150px;height:38px;border:1px solid #d7e0e9;border-radius:8px;background:#fff;padding:0 10px;color:#24384c}.order-filter-count{margin-left:auto;align-self:center;color:#718397;font-size:13px}.list-table tbody tr.order-row.todo>td{background:#fff}.list-table tbody tr.order-row.done>td{background:#fff2b8}.list-table tbody tr.order-row.paid>td{background:#d9f3de}.list-table tbody tr.order-row.done:hover>td{background:#ffeb98}.list-table tbody tr.order-row.paid:hover>td{background:#c4ebcd}@media(max-width:760px){.order-filters{align-items:stretch}.order-filters label,.order-filters select{width:100%}.order-filter-count{margin-left:0}}
