:root{--navy:#003a66;--blue:#0052a4;--cyan:#14b9e6;--ink:#111820;--muted:#5c6872;--line:#b8bec5;--soft-line:#d9dde1;--yellow:#fffdec;--pink:#fceafa;--green:#d8f2d4;--purple:#eadcf1;--focus:#ff8a00;font-family:Arial,Meiryo,sans-serif;color:var(--ink);background:#fff;scrollbar-color:#7f8a93 #e8ebed;scrollbar-width:auto}*{box-sizing:border-box}body{margin:0;min-width:320px;font-size:14px;background:white}.skip{position:fixed;left:8px;top:-60px;background:#fff;border:2px solid var(--navy);padding:8px;z-index:99}.skip:focus{top:8px}button,select,input{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.global-header{min-height:58px;display:grid;grid-template-columns:145px minmax(230px,1fr) 300px auto;align-items:center;gap:8px;padding:5px 14px;background:#fff}.home-link{display:flex;align-items:center;gap:5px;border:0;background:transparent;padding:3px;color:#222}.home-link span{font-size:34px;line-height:1}.home-link b{font-size:16px}.global-header h1{font-size:21px;font-weight:500;margin:0;white-space:nowrap}.account{display:grid;font-size:11px;line-height:1.45}.account b{font-weight:500}.utility-nav{display:flex;justify-content:flex-end;gap:4px}.utility-nav button{border:0;background:#fff;padding:8px 7px;white-space:nowrap}.utility-nav button:hover,.home-link:hover{background:#eef5fa}.navy-rule{height:22px;background:var(--navy)}.prototype-note{padding:4px 14px;background:#fff8cd;border-bottom:1px solid #e5ce72;text-align:center;font-size:12px;color:#5c4a00}main{padding:28px 18px 48px;min-width:0}.screen[hidden]{display:none}.menu-grid{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr)) minmax(180px,1fr);gap:10px;max-width:1180px;margin:10px auto}.menu-group,.notice-panel{border-top:4px solid;padding:0 10px}.menu-group h2,.notice-panel h2{font-size:22px;text-align:center;margin:7px 0 12px}.menu-group{display:flex;flex-direction:column;gap:10px}.menu-group button{min-height:84px;border:1px solid #bbb;border-radius:3px;display:flex;gap:8px;align-items:center;text-align:left;padding:14px;font-size:18px;font-weight:700;box-shadow:0 2px 3px #0002}.menu-group button span{font-size:28px;color:#5d6165}.pink{border-color:#e9a9c3}.pink button{background:#f6cfde}.yellow{border-color:#efd992}.yellow button{background:#fff3cf}.green{border-color:#96d890}.green button{background:#d2f0ce}.purple{border-color:#c5a7d3}.purple button{background:#eadbf1}.notice-panel{border-color:#8fc7da}.notice-panel>div{background:repeating-linear-gradient(#eefbfb 0 30px,#c4e5e3 31px 32px);padding:16px 8px 8px;min-height:92px;box-shadow:0 4px 6px #0003}.notice-panel p{margin:5px 0;line-height:1.5;color:#105a8b}.notice-panel em{color:#df2d7b;font-style:normal}.screen-toolbar{display:grid;grid-template-columns:1fr auto 1fr;gap:18px;align-items:end;margin:5px 4px 12px}.toolbar-left,.toolbar-right{display:flex;gap:12px;align-items:end}.toolbar-right{justify-content:flex-end}.screen-toolbar label,.list-toolbar label{display:flex;gap:5px;align-items:center;white-space:nowrap}.screen-toolbar select,.list-toolbar select,.list-toolbar input{height:32px;border:1px solid #a9a9a9;background:#fff;padding:3px 8px}.text-link,.month-switch button{border:0;background:transparent;color:#143a9c;padding:5px}.month-switch{text-align:center}.month-switch b{display:block;font-size:23px}.month-switch span{display:flex;justify-content:center}.view-tabs{display:flex;justify-content:flex-end;border-bottom:1px solid #777}.view-tabs button,.subnav button{border:1px solid #999;background:linear-gradient(#fff,#d7d7d7);padding:8px 18px;font-weight:700}.view-tabs button.active,.subnav button.active{background:linear-gradient(#dbeaf3,#fff);border-bottom-color:#fff}.schedule-scroll{overflow:auto;border:1px solid #aaa;scrollbar-gutter:stable;max-height:640px}.schedule{min-width:1200px;position:relative}.schedule-head,.schedule-row{display:grid;grid-template-columns:90px repeat(22,54px)}.schedule-head{position:sticky;top:0;z-index:5}.schedule-head .label{background:#fff;color:#333;border-right:1px solid var(--line)}.hour{grid-column:span 2;color:#fff;text-align:center;background:linear-gradient(90deg,var(--blue),var(--cyan));border-right:1px solid #78d7ec;padding:3px 0}.minute{background:linear-gradient(90deg,var(--blue),var(--cyan));color:#fff;text-align:center;font-size:10px;padding:2px;border-right:1px solid #8edbeb}.schedule-row{min-height:34px;position:relative}.schedule-row:nth-child(odd) .slot:nth-child(4n+2),.schedule-row:nth-child(odd) .slot:nth-child(4n+3){background:var(--yellow)}.schedule-row:nth-child(even) .slot:nth-child(4n),.schedule-row:nth-child(even) .slot:nth-child(4n+1){background:var(--pink)}.person{position:sticky;left:0;z-index:3;background:#f7e3f7;border-right:1px solid var(--line);border-bottom:1px solid var(--soft-line);padding:7px 8px;color:#182e9a;text-align:left;white-space:nowrap;overflow:hidden}.slot{border-right:1px solid #d5d8da;border-bottom:1px solid #d5d8da;min-height:34px}.shift-block{z-index:2;align-self:center;height:25px;border:1px solid #777;background:#fff;padding:3px 6px;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;box-shadow:0 1px 1px #0001}.shift-block.warn{background:#fff1c9;border-color:#b17b00}.subnav{display:flex;border-bottom:1px solid #999;margin-bottom:14px;overflow:auto}.list-toolbar{display:flex;gap:16px;align-items:end;flex-wrap:wrap;background:#f4f4f4;border:1px solid #c8c8c8;padding:9px 10px;margin-bottom:8px}.search-box{position:relative;display:flex;align-items:center;gap:6px}.search-box input{width:min(300px,55vw);padding-right:34px}.clear-button{position:absolute;right:3px;bottom:3px;width:26px;height:26px;border:0;background:transparent;font-size:18px}.result-count{margin-left:auto;font-weight:700}.data-table-wrap{overflow:auto;border:1px solid #999;scrollbar-gutter:stable}.data-table{width:100%;min-width:900px;border-collapse:collapse}.data-table th{position:sticky;top:0;background:var(--navy);color:#fff;font-weight:500;text-align:left;padding:7px 8px;border-right:1px solid #477596}.data-table td{padding:6px 8px;border-right:1px solid #ddd;border-bottom:1px solid #d2d2d2;white-space:nowrap}.data-table tbody tr:nth-child(even){background:#f5f8fa}.data-table tbody tr:hover{background:#fff9d7}.row-link{border:0;background:transparent;color:#173b9a;text-decoration:underline;padding:2px}.status{font-weight:700}.status.ok{color:#16612b}.status.warn{color:#8a5300}.status.off{color:#6b6b6b}.empty{padding:28px;text-align:center;color:var(--muted)}.pager{display:flex;justify-content:center;gap:4px;padding:12px}.pager button{min-width:34px;border:1px solid #999;background:#fff;padding:5px}.pager button[aria-current=page]{background:var(--navy);color:#fff}.dialog-head{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #aaa;padding-bottom:8px}.dialog-head h2{font-size:18px;margin:0}.dialog-head button{border:0;background:transparent;font-size:22px}dialog{width:min(560px,calc(100% - 24px));border:2px solid var(--navy);padding:0;box-shadow:0 12px 40px #0005}dialog::backdrop{background:#00172d80}dialog form{padding:16px}.detail-grid{display:grid;grid-template-columns:120px 1fr;border-top:1px solid #ccc;margin-top:12px}.detail-grid dt,.detail-grid dd{margin:0;padding:8px;border-bottom:1px solid #ddd}.detail-grid dt{font-weight:700;background:#eef4f8}.dialog-note{font-size:12px;color:#665100;background:#fff8cf;padding:8px}.dialog-actions{text-align:right}.dialog-actions button{border:1px solid #777;background:linear-gradient(#fff,#ddd);padding:7px 24px}.toast{position:fixed;right:16px;bottom:16px;background:#123f60;color:#fff;padding:10px 14px;box-shadow:0 3px 12px #0004;opacity:0;pointer-events:none}.toast.show{opacity:1}@media(max-width:900px){.global-header{grid-template-columns:auto 1fr}.account,.utility-nav{grid-column:1/-1}.utility-nav{justify-content:flex-start;overflow:auto}.menu-grid{grid-template-columns:repeat(2,minmax(150px,1fr))}.notice-panel{grid-column:1/-1}.screen-toolbar{grid-template-columns:1fr}.toolbar-right{justify-content:flex-start}.month-switch{grid-row:1}.schedule-scroll{max-height:none}}@media(max-width:560px){main{padding:16px 8px 36px}.global-header h1{font-size:16px}.menu-grid{grid-template-columns:1fr}.menu-group button{min-height:62px}.toolbar-left,.toolbar-right{align-items:stretch;flex-direction:column}.screen-toolbar label{justify-content:space-between}.prototype-note{text-align:left}.result-count{width:100%;margin-left:0}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}@media(forced-colors:active){.data-table th,.navy-rule{border:1px solid CanvasText}.shift-block{border:2px solid CanvasText}}
@media(max-width:560px){.global-header{min-height:0;padding:4px 8px;gap:2px}.global-header h1{font-size:15px;line-height:1.25}.home-link{padding:1px 0}.home-link span{font-size:26px}.account{font-size:10px;line-height:1.25}.utility-nav{gap:0}.utility-nav button{padding:5px 4px;font-size:12px}.navy-rule{height:14px}main{padding:10px 6px 20px}.prototype-note{padding:3px 8px;text-align:left}.menu-grid{grid-template-columns:1fr}.menu-group{gap:6px;padding:0 6px}.menu-group h2{font-size:18px;margin:4px 0 6px}.menu-group button{min-height:54px;padding:9px 10px;font-size:15px}.toolbar-left,.toolbar-right{align-items:stretch;flex-direction:column}.screen-toolbar label{justify-content:space-between}.master-top{gap:6px}.master-actions{gap:5px}.folder-tabs{overflow-x:auto}.result-count{width:100%;margin-left:0}.old-bottom-buttons{padding-top:10px}}
.ce-history-tools{display:flex;align-items:center;gap:.5rem;margin:.25rem 0;font-size:.78rem}.ce-history-note{color:#666}.ce-history-table{table-layout:fixed;width:100%}.ce-history-table th:nth-child(1),.ce-history-table td:nth-child(1){width:28%}.ce-history-table th:nth-child(2),.ce-history-table td:nth-child(2){width:42%}.ce-history-table th:nth-child(3),.ce-history-table td:nth-child(3){width:30%}.ce-history-select,.ce-history-date,.ce-history-start{box-sizing:border-box;width:100%;min-width:0;font:inherit;padding:.15rem}.ce-history-table td{padding:.2rem .35rem}.verification-mode .ce-history-table td{background:#fffef0}@media(max-width:700px){.ce-history-table{font-size:12px}.ce-history-table th,.ce-history-table td{white-space:nowrap;padding:2px}.ce-history-table th:nth-child(1),.ce-history-table td:nth-child(1){width:30%}.ce-history-table th:nth-child(2),.ce-history-table td:nth-child(2){width:40%}.ce-history-table th:nth-child(3),.ce-history-table td:nth-child(3){width:30%}.ce-history-date,.ce-history-start{font-size:11px}.ce-history-tools{font-size:11px}}
/* Removed duplicate policy controls; history tables are the editable source in verification mode. */
.ce-policy-block{display:none!important}
.ce-history-table{min-width:0;max-width:100%;width:100%;table-layout:fixed}
.ce-history-table th,.ce-history-table td{min-width:0;overflow:hidden;text-overflow:clip}
#ceCareHistory th:nth-child(1),#ceCareHistory td:nth-child(1){width:20%}
#ceCareHistory th:nth-child(2),#ceCareHistory td:nth-child(2){width:55%}
#ceCareHistory th:nth-child(3),#ceCareHistory td:nth-child(3){width:25%}
#ceCopayHistory th:nth-child(1),#ceCopayHistory td:nth-child(1){width:12.5%}
#ceCopayHistory th:nth-child(2),#ceCopayHistory td:nth-child(2){width:62.5%}
#ceCopayHistory th:nth-child(3),#ceCopayHistory td:nth-child(3){width:25%}
#ceCareHistory input.ce-history-date{width:66.6667%;max-width:100%;box-sizing:border-box}
#ceCareHistory input.ce-history-start{width:50%;max-width:100%;box-sizing:border-box}
#ceCareHistory select.ce-history-kind,#ceCopayHistory select.ce-history-kind{width:30%;max-width:100%;box-sizing:border-box}
#ceCareHistory input.ce-history-date,#ceCopayHistory input.ce-history-date{width:30%;max-width:100%;box-sizing:border-box}

/* 履歴表: スマホ幅では表全体を画面内に収め、入力要素を列幅に合わせる */
.data-table-wrap.old-table-wrap:has(#ceCareHistory),
.data-table-wrap.old-table-wrap:has(#ceCopayHistory){
  width:100%;
  max-width:100%;
  overflow-x:hidden;
}
#ceCareHistory,#ceCopayHistory{
  width:100%;
  max-width:100%;
  min-width:0;
  table-layout:fixed;
}
#ceCareHistory select.ce-history-kind,#ceCopayHistory select.ce-history-kind,
#ceCareHistory input.ce-history-date,#ceCopayHistory input.ce-history-date,
#ceCareHistory input.ce-history-start,#ceCopayHistory input.ce-history-start{
  max-width:100%;
  box-sizing:border-box;
}
@media (max-width:700px){
  #ceCareHistory th:nth-child(1),#ceCareHistory td:nth-child(1){width:35%}
  #ceCareHistory th:nth-child(2),#ceCareHistory td:nth-child(2){width:40%}
  #ceCareHistory th:nth-child(3),#ceCareHistory td:nth-child(3){width:25%}
  #ceCopayHistory th:nth-child(1),#ceCopayHistory td:nth-child(1){width:30%}
  #ceCopayHistory th:nth-child(2),#ceCopayHistory td:nth-child(2){width:45%}
  #ceCopayHistory th:nth-child(3),#ceCopayHistory td:nth-child(3){width:25%}
  #ceCareHistory select.ce-history-kind,#ceCopayHistory select.ce-history-kind,
  #ceCareHistory input.ce-history-date,#ceCopayHistory input.ce-history-date,
  #ceCareHistory input.ce-history-start,#ceCopayHistory input.ce-history-start{
    width:100%;
    min-width:0;
  }
}

/* 介護度欄は全角約10文字分に固定 */
#ceCareHistory th:nth-child(1),
#ceCareHistory td:nth-child(1){
  width:4em;
}
#ceCareHistory th:nth-child(2),
#ceCareHistory td:nth-child(2){
  width:10em;
}
#ceCareHistory th:nth-child(3),
#ceCareHistory td:nth-child(3){
  width:12ch;
}

/* 自己負担率履歴表の列幅 */
#ceCopayHistory th:nth-child(1),
#ceCopayHistory td:nth-child(1){
  width:3em;
}
#ceCopayHistory th:nth-child(2),
#ceCopayHistory td:nth-child(2){
  width:10em;
}
#ceCopayHistory th:nth-child(3),
#ceCopayHistory td:nth-child(3){
  width:10em;
}

/* 固定幅を解除し、内容に応じた自然な列幅に戻す */
#ceCareHistory,#ceCopayHistory{
  table-layout:auto;
}
#ceCareHistory th,#ceCareHistory td,
#ceCopayHistory th,#ceCopayHistory td{
  width:auto;
}
#ceCareHistory select.ce-history-kind,#ceCopayHistory select.ce-history-kind,
#ceCareHistory input.ce-history-date,#ceCopayHistory input.ce-history-date,
#ceCareHistory input.ce-history-start,#ceCopayHistory input.ce-history-start{
  width:auto;
  min-width:0;
}

/* 介護度履歴表の有効期限入力欄を5分の1幅にする */
#ceCareHistory input.ce-history-date{
  width:100%;
}

/* 介護度履歴表を幅450pxに固定 */
.data-table-wrap.old-table-wrap:has(#ceCareHistory),
#ceCareHistory{
  width:300px;
  min-width:300px;
  max-width:300px;
  margin-left:0;
  margin-right:auto;
}

/* 自己負担率履歴表を幅300px・左寄せにする */
.data-table-wrap.old-table-wrap:has(#ceCopayHistory),
#ceCopayHistory{
  width:300px;
  min-width:300px;
  max-width:300px;
  margin-left:0;
  margin-right:auto;
}
.pattern-shift-notice{max-width:740px;margin:24px auto 0;padding:28px;background:#fffed1;border:1px solid #1684c4;line-height:1.45}.pattern-shift-notice span{color:#00f}.pattern-shift-notice b{color:red}.pattern-shift-options{width:740px;max-width:100%;margin:0 auto;border-collapse:collapse}.pattern-shift-options th{width:180px;background:#06439b;color:#fff;padding:12px}.pattern-shift-options td{padding:10px;border:1px solid #1684c4}.week-checks{display:flex;justify-content:space-around}.pattern-shift-actions{max-width:740px;margin:18px auto;display:flex;gap:24px;align-items:center}.pattern-shift-actions button{font-size:20px;padding:8px 24px}.pattern-shift-actions select{margin-left:auto}.pattern-shift-table{max-width:740px;margin:auto}.pattern-shift-table th{white-space:nowrap}
/* 利用者選択一覧の固定幅 */
.pattern-shift-table{width:150px!important;min-width:150px!important}
.pattern-shift-table{width:400px!important;min-width:400px!important}
.pattern-shift-notice{width:350px!important;max-width:350px!important}
.pattern-shift-options{width:300px!important}.pattern-shift-options th{width:50px!important}
#patternshift{width:400px;max-width:100%;margin-left:auto;margin-right:auto}
#patternshift .pattern-shift-notice{width:400px!important;max-width:400px!important}
#patternshift .pattern-shift-options{width:400px!important}
#patternshift .pattern-shift-options th{width:50px!important}
#patternshift .pattern-shift-options td{width:350px!important}
#patternshift .pattern-shift-actions{width:400px;max-width:400px}
#patternshift .pattern-shift-table{width:100%!important;min-width:0!important}
.client-distance-panel{margin:24px 0;padding:16px;border:1px solid #9bb8cc;background:#f4f8fb}.client-distance-panel h3{margin:0 0 6px;color:#064b78}.distance-matrix th,.distance-matrix td{white-space:nowrap;text-align:center}.distance-matrix input{width:64px;padding:4px}
.distance-matrix th:first-child{position:sticky;left:0;z-index:3;background:#064b78;color:#fff}.distance-matrix tbody th:first-child{z-index:2}
.distance-matrix thead th{white-space:nowrap;width:90px;min-width:90px;padding:6px 10px}.distance-matrix thead th:first-child{width:24px;min-width:24px;padding:6px 4px}
#clients .client-distance-panel{display:none}
#helpers .client-distance-panel{display:none}
.helper-distance-static{display:block!important}
.helper-distance-static[hidden]{display:none!important}
#helperedit:not([hidden]) + .helper-distance-static{display:block!important;margin-top:16px}
body:has(#helpers:not([hidden])) .helper-distance-static{display:none}
body:has(#clientedit:not([hidden])) .helper-distance-static,body:has(#clients:not([hidden])) .helper-distance-static{display:none!important}
#helperedit .ce-grid label,#helperedit .ce-grid label span{white-space:nowrap}#helperedit input[type=text],#helperedit input[type=search]{min-width:190px}
#helperedit .ce-grid select{white-space:nowrap;min-width:150px}
#helperedit .ce-grid label:has(select){white-space:nowrap;min-width:0}#helperedit .ce-grid label:has(select) select{min-width:86px;width:auto}#helperedit .ce-grid label:has(select) select:first-of-type{min-width:120px}
.he-vehicle-settings{display:flex!important;flex-wrap:nowrap!important;align-items:center;gap:8px}
.he-vehicle-settings .ce-col{flex:1 1 0;min-width:0}
.he-vehicle-settings select,.he-vehicle-settings input{width:30%!important;max-width:30%;min-width:0!important;box-sizing:border-box}
.he-vehicle-settings label{display:flex!important;align-items:center;gap:4px;white-space:nowrap!important}
.he-vehicle-settings .ce-col:first-child label{width:70%;}
.he-vehicle-settings .ce-col:first-child select{width:100%!important;max-width:100%;flex-basis:100%}
.he-rental-settings{margin-top:4px}
.he-rental-settings label{display:flex!important;align-items:center;gap:4px;white-space:nowrap!important}
.he-rental-settings input{width:90px!important;max-width:90px;min-width:90px!important;box-sizing:border-box}
#helperedit .ce-col label:has(.ce-contract-year){grid-template-columns:max-content 1fr;gap:0}
#helperedit .ce-contract-year{width:60px!important;min-width:60px!important}
#helperedit .ce-contract-month,#helperedit .ce-contract-day{width:40px!important;min-width:40px!important}
#gasmaster .data-table th:first-child,#gasmaster .data-table td:first-child{width:11em;min-width:11em;padding-right:2em}#gasmaster .data-table th:nth-child(2){width:auto}#gasmaster input[type=number]{width:30px;min-width:30px}
@media (max-width:600px){#gasmaster{width:100%;padding:8px;box-sizing:border-box}#gasmaster .mm-wrap{width:100%;margin:0}#gasmaster .mm-title{font-size:1.55rem;white-space:nowrap}#gasmaster .readonly-banner{font-size:.9rem;padding:10px}#gasmaster .data-table-wrap{overflow-x:auto;width:100%}#gasmaster .data-table{font-size:.85rem;min-width:420px}#gasmaster .data-table th:first-child,#gasmaster .data-table td:first-child{width:9em;min-width:9em;padding-right:1em}#gasmaster .classic-button{font-size:1rem;padding:8px 12px}.client-distance-panel{overflow-x:auto}}
#gasmaster input[type=number]{width:100px;min-width:100px}
@media (max-width:600px){html,body{width:100%;overflow-x:hidden}header{padding:8px 12px;display:flex;flex-wrap:wrap;gap:8px;font-size:.9rem}.screen{width:100%;max-width:100%;box-sizing:border-box;padding:8px}.mm-wrap,.master-top,.sal-toolbar,.pay-toolbar{max-width:100%;box-sizing:border-box}.data-table-wrap,.me-table-wrap,.wk-scroll{max-width:100%;overflow-x:auto}.data-table{font-size:.8rem}.old-bottom-buttons{flex-wrap:wrap;gap:8px}.classic-button,.mm-btn{min-height:42px}.client-distance-panel{font-size:.9rem}}
.sal-shift-row{cursor:pointer}
.sal-shift-row:hover,.sal-shift-row:focus{background:#e5f2ff;outline:2px solid #1683e8;outline-offset:-2px}
@media (max-width:600px){#gasmaster .data-table{min-width:0;width:100%;table-layout:fixed}#gasmaster .data-table th:first-child,#gasmaster .data-table td:first-child{width:34%}#gasmaster .data-table th:nth-child(2),#gasmaster .data-table td:nth-child(2){width:34%}#gasmaster .data-table th:nth-child(3),#gasmaster .data-table td:nth-child(3){width:32%}#gasmaster input[type=month]{width:100%;box-sizing:border-box}#gasmaster input[type=number]{width:58px;min-width:58px}#gasmaster .gas-del,#gasmaster .data-table .classic-button{padding:6px 8px;font-size:.85rem}}
@media (max-width:600px){#gasmaster{width:calc(100vw - 16px)!important;overflow:hidden}#gasmaster .data-table{min-width:0!important;max-width:100%!important;font-size:.72rem}#gasmaster .data-table td:nth-child(3){white-space:normal}#gasmaster .data-table td:nth-child(3) .classic-button{display:inline-block;width:auto;padding:5px 5px;margin:1px 0}}
.distance-matrix{table-layout:fixed;width:max-content;min-width:0!important}
.distance-matrix thead th,.distance-matrix tbody th,.distance-matrix td{width:110px;min-width:110px;white-space:nowrap}
.distance-matrix thead th:first-child:not(:empty){width:90px;min-width:90px;padding-left:8px;padding-right:8px}
.distance-matrix thead th:empty{width:24px;min-width:24px;padding-left:4px;padding-right:4px}
.distance-matrix thead th:nth-child(2){width:110px!important;min-width:110px!important;max-width:110px!important;overflow:hidden;white-space:nowrap}
/* 試作版ログイン */
.auth-screen{min-height:60vh;display:grid;place-items:center;padding:2rem 1rem}
.auth-card{width:min(100%,28rem);background:#fff;border:1px solid #b7c8d5;border-top:6px solid #0b4776;box-shadow:0 8px 24px rgba(0,35,70,.12);padding:2rem}
.auth-card h2{margin:0 0 .5rem;color:#0b4776;font-size:1.7rem}.auth-lead{color:#4a5965;margin:0 0 1.5rem}
.auth-card label{display:block;font-weight:700;margin:.9rem 0 .35rem}.auth-card input{box-sizing:border-box;width:100%;padding:.75rem;border:1px solid #8799a8;border-radius:3px;font-size:1rem}
.auth-submit{width:100%;margin-top:1.4rem;padding:.8rem;border:1px solid #0875bd;background:#0d8be0;color:#fff;font-weight:700;font-size:1.05rem;border-radius:3px;cursor:pointer}.auth-submit:hover{background:#086eaf}
.auth-error{color:#b42318;background:#fff1f0;border:1px solid #ef9a93;padding:.65rem}.auth-hint{font-size:.82rem;color:#687782;margin:1.2rem 0 0}.auth-hint code{background:#eef3f7;padding:.15rem .3rem}
