:root{font-family:"Noto Sans JP","Yu Gothic",Meiryo,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#243247;background:#f4f7fb;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input{font:inherit}button{cursor:pointer}.app-shell{max-width:1540px;margin:auto;padding:18px 24px}.masthead{display:flex;align-items:center;justify-content:space-between;gap:15px;border-bottom:1px solid #dbe4ee;padding:8px 0 24px}.brand{display:flex;align-items:center;gap:13px}.brand-mark{display:grid;place-items:center;background:#e5edff;border-radius:12px;width:48px;height:48px;font-size:23px}.brand h1{font-size:1.47rem;margin:0 0 4px;font-weight:750;letter-spacing:-.025em}.brand p{font-size:.83rem;margin:0;color:#586779}.readonly{display:inline-block;background:#e5eaf1;border-radius:6px;padding:3px 7px;color:#526176;margin-left:6px;font-size:.71rem}.update-box{text-align:right;display:grid;gap:4px;color:#607087;font-size:.76rem}.update-box strong{font-size:.9rem;color:#26354a}.update-box small{font-size:.71rem}.tabs{display:flex;gap:7px;overflow:auto;padding:16px 0 4px;scrollbar-width:thin}.tab{background:#fff;border:1px solid #dae3ed;color:#4c5b6e;border-radius:9px;padding:10px 14px;white-space:nowrap;font-weight:600;transition:background .12s}.tab[aria-selected="true"]{background:#1767c5;color:#fff;border-color:#1767c5}.tab:focus-visible,input:focus-visible,th button:focus-visible{outline:3px solid #75aeff;outline-offset:2px}.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:20px 0}.metric{padding:18px 16px;background:white;border:1px solid #e2eaf2;border-radius:12px;box-shadow:0 1px 3px #21374e0b}.metric .key{font-size:.79rem;color:#667587;margin-bottom:9px;overflow-wrap:anywhere}.metric .val{font-size:1.53rem;font-weight:760;white-space:normal;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}.metric .sub{font-size:.7rem;color:#68798e;margin-top:8px}.data-panel{background:#fff;border:1px solid #dfe6ee;border-radius:13px;overflow:hidden;box-shadow:0 2px 12px #21374e08}.panel-header{padding:18px;display:flex;align-items:center;justify-content:space-between;gap:14px}.panel-title h2{font-size:1.13rem;margin:0 0 5px}.panel-title p{margin:0;color:#63758a;font-size:.76rem}.filters{min-width:min(100%,280px)}.search-label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}input[type="search"]{width:100%;border:1px solid #d5dfeb;background:#fbfdff;border-radius:8px;padding:10px 11px;font-size:.88rem;color:#243247}.table-scroll{overflow:auto;max-height:65vh;border-top:1px solid #e4eaf1}table{border-collapse:separate;border-spacing:0;width:100%;font-size:.84rem}thead th{position:sticky;top:0;z-index:1;background:#eaf0f6;color:#4b5b6e;border-bottom:1px solid #d9e3ed}th button{background:transparent;border:0;color:inherit;white-space:nowrap;font-weight:700;padding:12px 14px;text-align:left;width:100%}td{padding:12px 14px;border-bottom:1px solid #eef1f5;white-space:nowrap}tbody tr:nth-child(even){background:#f9fbfd}tbody tr:hover{background:#eef6ff}.rank{font-weight:700;color:#ba5717}.num{font-variant-numeric:tabular-nums}.empty{padding:46px;text-align:center;color:#77879b}.note{color:#68768a;line-height:1.65;font-size:.79rem;margin:14px 3px}.status{border:1px dashed #ccd8e5;background:#fff;border-radius:10px;margin-top:20px;padding:38px 20px;text-align:center;color:#526478}footer{color:#7f8fa4;font-size:.72rem;margin-top:28px;text-align:center}@media(max-width:800px){.app-shell{padding:11px}.masthead{align-items:flex-start}.brand-mark{width:39px;height:39px;font-size:20px}.brand h1{font-size:1.16rem}.brand p{font-size:.69rem}.update-box{max-width:125px}.update-box strong{font-size:.72rem}.metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:13px 0}.metric{padding:14px 12px}.metric .val{font-size:1.22rem}.metric .key{font-size:.73rem}.tabs{padding-top:12px}.tab{padding:9px 11px;font-size:.8rem}.panel-header{display:block;padding:14px}.filters{margin-top:11px;min-width:0}.table-scroll{max-height:68vh}td,th button{padding:11px 10px;font-size:.78rem}.note{font-size:.72rem}}
