:root{font-family:"Yu Gothic","Meiryo",sans-serif;color:#10213a;background:#f2f6fc}*{box-sizing:border-box}body{margin:0}.hero{background:linear-gradient(120deg,#164b79,#08757c);color:white;padding:28px max(5vw,32px);display:flex;justify-content:space-between;align-items:center;gap:20px;box-shadow:0 4px 14px #173a5a33}.hero h1{margin:0 0 8px;font-size:28px}.hero p{margin:0;color:#d9eff7}.badge{border:1px solid #ffffff66;border-radius:999px;padding:11px 18px;background:#ffffff12;white-space:nowrap}main{max-width:1420px;margin:26px auto;padding:0 22px}.card{background:white;border:1px solid #d9e2ef;border-radius:18px;padding:24px;margin-bottom:20px;box-shadow:0 10px 28px #26486812}.section-head{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:18px}.section-head h2{margin:0;font-size:21px}.section-head p{margin:0;color:#718098}.maker-panel{display:flex;align-items:stretch;gap:16px;margin-bottom:18px}.maker-select{display:flex;flex-direction:column;gap:7px;min-width:300px;font-weight:700;color:#42536b}.maker-select select{background:#fff}.maker-current{flex:1;display:grid;grid-template-columns:auto 1fr;grid-template-areas:"label name" "label note";align-items:center;column-gap:16px;border:1px solid #d8e2ee;border-radius:13px;padding:14px 17px;background:#f8fafc}.maker-current>span{grid-area:label;color:#66768c}.maker-current strong{grid-area:name;font-size:20px}.maker-current small{grid-area:note;color:#718098}.maker-current[data-state="detected"]{border-color:#75c49b;background:#edf9f2}.maker-current[data-state="manual"]{border-color:#79b7dc;background:#edf7fd}.maker-current[data-state="error"]{border-color:#e39b92;background:#fff1ef}.maker-current[data-state="error"] strong{color:#a12f22}.drop-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.drop{min-height:180px;border:2px dashed #41a578;border-radius:16px;background:#f1fbf6;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:20px;cursor:pointer}.drop.drag{background:#dcf5e8;transform:scale(1.005)}.drop input{display:none}.drop .icon{font-size:34px}.drop strong{font-size:18px;margin:8px}.drop small{color:#7b899d}.drop em{font-style:normal;color:#078148;font-weight:700;margin-top:13px;word-break:break-all}.actions{display:flex;align-items:center;gap:10px;margin-top:18px}button,select,input{font:inherit;border:1px solid #ccd7e5;border-radius:9px;padding:10px 14px;background:white}button{cursor:pointer;font-weight:700}.primary{background:#086a8a;color:white;border-color:#086a8a;padding-inline:34px}.primary:disabled{opacity:.5}#message{margin-left:auto;font-weight:700;color:#c2392b}.progress{height:7px;background:#e7edf5;border-radius:8px;margin-top:13px;overflow:hidden}.progress div{height:100%;width:0;background:#14749a;transition:width .2s}.progress-text{font-size:13px;color:#6c7b90;margin-top:7px}.kpis{display:grid;grid-template-columns:repeat(7,minmax(120px,1fr));gap:12px}.kpi{border-radius:13px;padding:15px;border:1px solid #dbe4ef;background:#f8fafc}.kpi b{display:block;font-size:27px;margin-top:5px}.kpi.rate{background:#eaf5ff}.kpi.ok{background:#e9f8ef}.kpi.warn{background:#fff6df}.kpi.bad{background:#fff0ee}.totals{display:flex;gap:24px;flex-wrap:wrap;margin-top:16px;padding-top:15px;border-top:1px solid #e3e9f1}.totals strong{font-size:18px}.filters{display:flex;gap:8px}.filters input{width:330px}.table-wrap{overflow:auto;max-height:65vh;border:1px solid #e0e6ee;border-radius:11px}table{border-collapse:collapse;width:100%;min-width:1200px}th,td{padding:11px 10px;border-bottom:1px solid #e7ecf2;text-align:left;white-space:nowrap}th{position:sticky;top:0;background:#eef4fa;z-index:1}td.num{text-align:right;font-variant-numeric:tabular-nums}.status{display:inline-block;border-radius:999px;padding:5px 9px;font-size:12px;font-weight:800}.status-一致{background:#dff5e7;color:#177044}.status-日付不一致,.status-伝票No\.不一致,.status-金額不一致{background:#fff0c9;color:#885d00}.status-請求書のみ,.status-UHのみ{background:#ffe3df;color:#a12f22}.count{margin-top:10px;color:#66768c}.diagnostics pre{white-space:pre-wrap}.diagnostics summary{cursor:pointer;font-weight:700}@media(max-width:900px){.maker-panel{flex-direction:column}.maker-select{min-width:0}.maker-current{grid-template-columns:1fr;grid-template-areas:"label" "name" "note";gap:4px}.hero{align-items:flex-start;flex-direction:column}.maker-panel{display:flex;align-items:stretch;gap:16px;margin-bottom:18px}.maker-select{display:flex;flex-direction:column;gap:7px;min-width:300px;font-weight:700;color:#42536b}.maker-select select{background:#fff}.maker-current{flex:1;display:grid;grid-template-columns:auto 1fr;grid-template-areas:"label name" "label note";align-items:center;column-gap:16px;border:1px solid #d8e2ee;border-radius:13px;padding:14px 17px;background:#f8fafc}.maker-current>span{grid-area:label;color:#66768c}.maker-current strong{grid-area:name;font-size:20px}.maker-current small{grid-area:note;color:#718098}.maker-current[data-state="detected"]{border-color:#75c49b;background:#edf9f2}.maker-current[data-state="manual"]{border-color:#79b7dc;background:#edf7fd}.maker-current[data-state="error"]{border-color:#e39b92;background:#fff1ef}.maker-current[data-state="error"] strong{color:#a12f22}.drop-grid{grid-template-columns:1fr}.kpis{grid-template-columns:repeat(2,1fr)}.section-head{align-items:flex-start;flex-direction:column}.filters{width:100%;flex-direction:column}.filters input{width:100%}}@media print{.hero,.upload-card,.filters,.diagnostics,.section-head button{display:none!important}main{margin:0;padding:0}.card{box-shadow:none;border:none}.table-wrap{max-height:none;overflow:visible}th{position:static}}
