html{-webkit-tap-highlight-color:transparent}
:root{--ink:#171717;--muted:#999;--line:#e9e9e9;--blue:#3157ff;--coral:#ff684d;--lime:#d9f44a;--serif:"Yu Mincho","Noto Serif JP","Songti SC",serif;--sans:Inter,"Helvetica Neue","PingFang SC","Microsoft YaHei",sans-serif}*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:#fff;color:var(--ink)}body{font-family:var(--sans)}a{color:inherit;text-decoration:none}header{height:78px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(22px,5vw,72px);border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:10px;font-size:12px;font-weight:650}.brand span{display:grid;place-items:center;width:25px;height:25px;border-radius:7px;color:#fff;background:var(--ink);font:500 11px var(--serif);transform:rotate(-4deg)}.back{color:#888;font-size:9px;transition:.25s}.back:hover{color:var(--blue)}main{max-width:980px;margin:auto;padding:clamp(70px,10vh,120px) 28px 100px}.heading{position:relative;min-height:190px;border-bottom:1px solid var(--ink)}.heading p{margin:0 0 18px;color:var(--blue);font-size:8px;font-weight:700;letter-spacing:.2em}.heading h1{margin:0;font:500 clamp(52px,8vw,92px)/1 var(--serif);letter-spacing:-.07em}.heading>span{position:absolute;right:0;bottom:24px;color:#aaa;font-size:9px}.favorites{padding-top:12px}.favorite{display:grid;grid-template-columns:70px 1fr 38px;align-items:center;min-height:92px;border-bottom:1px solid var(--line);transition:.3s}.favorite:hover{padding-inline:13px;background:#fafafa}.level{color:#aaa;font-size:8px}.favorite-link{display:flex;align-items:baseline;gap:17px;min-width:0}.favorite strong{font:500 clamp(19px,2.3vw,28px) var(--serif)}.favorite small{color:#aaa;font-size:8px}.favorite button{width:31px;height:31px;border:1px solid var(--line);border-radius:50%;background:#fff;color:#aaa;cursor:pointer;transition:.25s}.favorite button:hover{color:#fff;border-color:var(--coral);background:var(--coral);transform:rotate(90deg)}.empty{display:grid;place-items:center;min-height:260px;text-align:center}.empty div{display:grid;gap:12px}.empty b{font:500 20px var(--serif)}.empty span{color:#aaa;font-size:10px}.empty a{margin-top:10px;color:var(--blue);font-size:9px}@media(max-width:560px){header{height:68px;padding-inline:20px}main{padding:65px 21px 75px}.heading{min-height:160px}.heading>span{bottom:19px}.favorite{grid-template-columns:42px 1fr 35px;min-height:82px}.favorite-link{display:grid;gap:5px}.favorite strong{font-size:19px}.favorite:hover{padding-inline:7px}}
