:root{--ink:#172b25;--sub:#6e7973;--green:#214e3f;--line:#e0e5df;--paper:#f7f8f3;--white:#fff;--accent:#d9e7b8}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Noto Sans JP","Hiragino Kaku Gothic ProN",sans-serif;font-size:14px;line-height:1.6}button,input,select{font:inherit}button,a,select{touch-action:manipulation}button{cursor:pointer}button:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible{outline:3px solid #8fae5b;outline-offset:3px}button{color:inherit}a{color:var(--green)}.top{height:76px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 max(5vw,20px);background:#f7f8f3}.brand{text-decoration:none;font-size:14px;letter-spacing:1.5px;font-weight:750;display:flex;align-items:center;gap:12px}.brandicon{background:var(--green);color:#fff;font-family:Georgia,serif;font-size:24px;width:33px;height:33px;text-align:center;line-height:33px;border-radius:6px}.brand small{letter-spacing:0;font-size:11px;color:var(--sub);border-left:1px solid #b6c1b5;padding-left:12px}.textbtn{border:0;background:none;font-size:12px;padding:8px}.textbtn span{margin-left:8px}main{max-width:1350px;margin:auto;padding:0 5vw}.hero{display:flex;justify-content:space-between;align-items:center;gap:30px;padding:51px 0 38px}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:700;color:var(--sub);margin:0 0 17px}h1{font-size:40px;letter-spacing:.015em;line-height:1.45;margin:0;font-weight:750}.intro{font-size:13px;color:var(--sub);line-height:1.9;margin:15px 0 0}.heroMeta{min-width:245px;text-align:right}.stamp{border:1px solid #c9d3c6;border-radius:4px;padding:4px 9px;font-size:10px}.heroMeta p{color:var(--sub);font-size:11px;margin:14px 0 19px}.heroMeta p b{font-size:15px;margin-left:10px;font-weight:500;color:var(--ink)}.stats{display:flex;justify-content:flex-end;gap:35px}.stats div{display:flex;flex-direction:column;text-align:left}.stats strong{font-size:32px;font-family:Georgia,serif;line-height:1.3;font-weight:500}.stats span{font-size:10px;color:var(--sub);margin-top:5px}.workspace{background:#fff;border:1px solid var(--line);border-radius:13px;padding:23px;box-shadow:0 4px 15px #1a2f2010}.searchrow{display:flex;gap:13px}.searchbox{display:flex;align-items:center;border:1px solid #cbd5cc;border-radius:7px;height:51px;flex:1;background:#fcfdf9;min-width:0;padding:0 14px;gap:10px}.searchbox>span{font-size:27px;line-height:1}.searchbox input{border:0;outline:none;background:none;width:100%;min-width:0;font-size:13px;color:var(--ink)}kbd{color:#9aa39b;font-size:11px;border:1px solid var(--line);border-radius:3px;padding:0 5px}.favFilter{border:1px solid var(--line);background:#fff;border-radius:7px;padding:0 15px;font-size:13px;white-space:nowrap}.favFilter b{font-size:10px;font-weight:500;background:#f0f3eb;border-radius:4px;padding:2px 6px;margin-left:7px}.favFilter[aria-pressed=true]{border-color:var(--green);background:#edf3e4}.filters{display:flex;align-items:center;gap:20px;margin-top:17px;flex-wrap:wrap}.selectfield,.rangefield{display:flex;gap:10px;align-items:center}.filters label,.rangefield>span:first-child{font-size:11px;color:var(--sub)}select{background:#fff;border:1px solid var(--line);border-radius:5px;padding:6px 26px 6px 10px;color:var(--ink);font-size:12px;max-width:200px}.dash{color:#acb4ac}.muted{color:var(--sub)}.filters>.textbtn{margin-left:auto}.quick{border-top:1px solid #eff1eb;display:flex;align-items:center;gap:8px;margin-top:17px;padding-top:14px;flex-wrap:wrap}.quick>span{color:var(--sub);font-size:10px;margin-right:5px}.quick button{font-size:11px;border:0;background:#f3f5ee;padding:4px 10px;border-radius:4px}.resultbar{display:flex;align-items:center;justify-content:space-between;padding:27px 0 16px;gap:10px}.resultbar strong{font-size:16px}.resultbar #context{font-size:10px;color:var(--sub);margin-left:13px}.switcher{display:flex;gap:3px;background:#e9ede4;padding:4px;border-radius:7px}.switcher button{border:0;background:none;border-radius:5px;font-size:12px;padding:7px 14px;white-space:nowrap;color:var(--sub)}.switcher button.active{background:#fff;box-shadow:0 1px 4px #26352216;color:var(--ink)}.rankGroup{display:grid;grid-template-columns:76px 1fr;background:#fff;border:1px solid var(--line);border-radius:9px;margin-bottom:12px;overflow:hidden}.rankLabel{background:var(--tonebg);color:var(--tone);display:flex;flex-direction:column;align-items:center;padding-top:19px;border-right:1px solid var(--line)}.rankLabel strong{font-size:32px;font-family:Georgia,serif;font-weight:500;line-height:1.2}.rankLabel span{font-size:9px;margin-top:5px;opacity:.7}.companyRows{min-width:0}.companyRow{display:flex;align-items:center;gap:14px;min-height:67px;padding:12px 19px;border-bottom:1px solid #eff1ec}.companyRow:last-child{border-bottom:0}.companyMain{flex:1;min-width:0}.companyName{border:0;background:none;font-weight:600;text-align:left;font-size:14px;padding:0;line-height:1.7;overflow-wrap:anywhere}.companyName:hover{text-decoration:underline;text-underline-offset:4px}.role{color:#68766c;font-size:11px;margin-top:1px;overflow-wrap:anywhere}.tag{color:#73806f;font-size:10px;background:#f4f6f0;padding:4px 8px;border-radius:4px;white-space:nowrap}.star{font-size:22px;border:0;background:none;line-height:1;min-width:34px;min-height:36px;color:#b3bdb0}.star.saved{color:#92822b}.provisional,.uncertain{font-size:9px;border:1px solid #d8d5b0;border-radius:3px;padding:1px 4px;margin-left:7px;font-weight:400;color:#8c7a37}.matrixHint{font-size:11px;color:var(--sub);margin:0 0 13px}.matrixWrap{overflow:auto;border:1px solid var(--line);border-radius:9px;max-height:75vh;background:#fff}.matrix{border-collapse:separate;border-spacing:0;font-size:11px;table-layout:fixed;width:max-content;min-width:100%}.matrix th,.matrix td{border-right:1px solid var(--line);border-bottom:1px solid var(--line);vertical-align:top}.matrix th{position:sticky;top:0;z-index:2;background:#ecf0e6;font-weight:500;padding:13px 8px;width:200px;text-align:left}.matrix th:first-child{width:61px;left:0;z-index:4;text-align:center}.matrix td{padding:9px;width:200px}.matrix td.rankCell{position:sticky;left:0;z-index:1;width:61px;min-width:61px;text-align:center;background:var(--tonebg);color:var(--tone);font:24px Georgia,serif;padding-top:16px}.mini{border:1px solid #e6ebe1;border-radius:5px;margin-bottom:7px;padding:7px 9px;background:#fafbf7;display:flex;gap:3px;align-items:flex-start}.mini>button:first-child{border:0;background:none;text-align:left;padding:0;flex:1;min-width:0;font-size:11px;overflow-wrap:anywhere}.mini small{display:block;font-size:9px;color:var(--sub);margin-top:3px}.mini .star{min-width:24px;min-height:25px;font-size:17px}.matrix td:empty{background:#fcfdf9}footer{margin-top:38px;border-top:1px solid var(--line);padding:23px 0 35px;font-size:10px;color:var(--sub);display:flex;flex-direction:column;align-items:flex-start;gap:8px}footer p{margin:0}footer .textbtn{padding-left:0}#empty{text-align:center;background:#fff;border:1px solid var(--line);border-radius:10px;padding:50px 15px}#empty>div{font-size:40px;color:#819272}#empty h2{font-size:18px}#empty p{font-size:12px;color:var(--sub)}#empty button{border:0;background:var(--green);color:#fff;border-radius:5px;padding:10px 20px;margin-top:10px}dialog{width:min(590px,calc(100% - 28px));max-height:85vh;border:1px solid var(--line);border-radius:14px;padding:28px;color:var(--ink);box-shadow:0 20px 80px #0003}dialog::backdrop{background:#152a2077;backdrop-filter:blur(3px)}.modalhead{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.modalhead .eyebrow{margin:0}.close{background:#f0f3ea;border:0;border-radius:50%;font-size:23px;width:33px;height:33px}.detailScore{font:50px Georgia,serif;color:var(--green);margin-top:15px}.detailScore small{font:11px sans-serif;color:var(--sub);margin-left:10px}dialog h2{font-size:22px;overflow-wrap:anywhere;line-height:1.6;margin:12px 0}dialog h3{font-size:14px;margin-top:25px}dialog p,dialog li{font-size:12px;line-height:1.9;color:var(--sub)}dialog ul{padding-left:20px}dialog dl{font-size:12px}dialog dt{color:var(--sub);margin-top:18px;font-size:10px}dialog dd{margin:3px 0;overflow-wrap:anywhere}dialog details{background:#f5f7f0;padding:12px;border-radius:6px;margin-top:20px;font-size:12px}#sourceLinks{display:flex;gap:8px;flex-wrap:wrap}#sourceLinks a{font-size:12px;border:1px solid var(--line);padding:8px 12px;border-radius:4px}.detailSave{border:1px solid #b6c6b0;background:#f0f5e8;border-radius:6px;padding:9px 16px;margin-top:15px;font-size:12px}[hidden]{display:none!important}@media(min-width:1450px){main{padding:0 45px}}@media(max-width:650px){.top{height:62px;padding:0 18px}.brand{font-size:11px;gap:7px;letter-spacing:1px}.brand small{font-size:9px;padding-left:8px}.brandicon{width:28px;height:28px;line-height:28px;font-size:22px}.top .textbtn{font-size:10px;padding:0}.top .textbtn span{margin-left:2px}main{padding:0 16px}.hero{padding:31px 0 26px;gap:10px;align-items:flex-end}h1{font-size:28px;line-height:1.5}.eyebrow{font-size:8px;letter-spacing:1.4px;margin-bottom:12px}.intro{font-size:10px;line-height:1.9;margin-top:12px}.heroMeta{min-width:85px}.heroMeta>p{font-size:8px;margin:10px 0 13px}.heroMeta p b{display:block;margin:3px 0 0;font-size:13px}.stamp{font-size:8px;padding:3px 7px}.stats{gap:13px;flex-direction:column;align-items:flex-end}.stats strong{font-size:24px}.stats span{font-size:8px;margin-top:0}.stats div{text-align:right}.stats div:last-child{display:none}.workspace{padding:14px;border-radius:10px}.searchrow{gap:8px}.searchbox{padding:0 9px;height:46px;gap:5px}.searchbox input{font-size:12px}.searchbox kbd{display:none}.favFilter{padding:0 10px;font-size:20px}.favFilter span{display:none}.favFilter b{font-size:9px;margin-left:2px}.filters{gap:12px;margin-top:14px}.selectfield,.rangefield{gap:6px}.filters label,.rangefield>span:first-child{font-size:9px}select{font-size:10px;padding:6px 19px 6px 6px;max-width:155px}.rangefield{gap:5px}.filters>.textbtn{font-size:10px;padding:1px 0;margin-left:0}.quick{margin-top:12px;padding-top:11px;gap:5px}.quick>span{font-size:9px;margin-right:0}.quick button{font-size:10px;padding:3px 7px}.resultbar{padding:20px 0 13px}.resultbar strong{font-size:13px}.resultbar #context{display:block;font-size:9px;margin:2px 0 0}.switcher button{font-size:10px;padding:6px 9px}.rankGroup{grid-template-columns:48px 1fr;margin-bottom:10px;border-radius:7px}.rankLabel{padding-top:15px}.rankLabel strong{font-size:25px}.rankLabel span{font-size:8px}.companyRow{padding:10px 10px;gap:5px;flex-wrap:wrap;min-height:65px}.companyMain{flex-basis:calc(100% - 40px)}.companyName{font-size:12px}.role{font-size:10px}.companyRow>.tag{order:3;font-size:9px;padding:1px 5px}.companyRow>.star{margin-left:auto}.companyRow>.tag+.star{order:2}.star{font-size:20px;min-height:30px;min-width:28px}.matrix th,.matrix td{width:170px}.matrix th:first-child,.matrix td.rankCell{width:48px;min-width:48px}.matrixHint{font-size:10px}dialog{padding:21px}dialog h2{font-size:20px}}
