:root{--ink:#1d1d1b;--paper:#f7f4ec;--acid:#d6ff45;--orange:#ff5b2e;--line:#1d1d1b}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:'Zen Kaku Gothic New',sans-serif}main{max-width:1160px;margin:auto;border-left:1px solid var(--line);border-right:1px solid var(--line)}header{height:78px;padding:0 4.8%;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}.logo{display:flex;align-items:center;gap:9px;font-size:13px;font-weight:900;letter-spacing:-.04em;line-height:1.05}.logo b{background:var(--ink);color:var(--paper);font-size:23px;width:36px;height:36px;display:grid;place-items:center}.logo em{font:9px 'DM Mono',monospace;font-style:normal;letter-spacing:.08em}header p{margin:0;text-align:right;font:9px/1.6 'DM Mono';letter-spacing:.08em}.directory{padding:0 4.8% 95px}.directory-head{padding:22px 0 15px;border-bottom:2px solid var(--ink);display:grid;grid-template-columns:1fr auto auto;gap:14px;align-items:center}.directory-head p{font:10px 'DM Mono';letter-spacing:.08em;margin:0}.search-box{height:38px;width:min(330px,30vw);border:1px solid var(--ink);display:flex;align-items:center;padding:0 10px;background:#fffefa;gap:8px}.search-box span{font-size:21px;line-height:0}.search-box input{font:500 12px 'Zen Kaku Gothic New';background:none;border:0;outline:none;width:100%;color:var(--ink)}.search-box kbd{font:9px 'DM Mono';border:1px solid #aaa;color:#777;padding:2px 4px}.directory-head button{border:0;background:var(--acid);font:700 12px 'Zen Kaku Gothic New';padding:11px 12px;cursor:pointer}.directory-head button:hover{background:var(--orange);color:white}.filters{padding:14px 0;display:flex;gap:7px;flex-wrap:wrap}.filters button{border:1px solid var(--ink);background:transparent;padding:6px 13px;border-radius:30px;font:12px 'Zen Kaku Gothic New';cursor:pointer}.filters button:hover,.filters .active{background:var(--ink);color:var(--paper)}.links{display:grid;grid-template-columns:repeat(2,1fr)}.site-link{min-height:86px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:14px;padding:14px 12px 14px 0}.site-link:nth-child(odd){margin-right:28px}.site-link:hover{background:#fffffa;padding-left:10px}.site-number{font:10px 'DM Mono';color:#777;width:24px}.site-body{min-width:0;flex:1}.site-body h3{font-size:15px;margin:0 0 3px;letter-spacing:-.04em}.site-body p{font:10px 'DM Mono';margin:0;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.site-tag{font:9px 'DM Mono';border:1px solid var(--ink);padding:4px 6px;white-space:nowrap}.site-link:hover .site-tag{background:var(--acid)}.site-arrow{font-size:20px}.empty{padding:40px 0;font-size:14px}.pagination{padding:25px 0;display:flex;align-items:center;justify-content:center;gap:16px}.pagination button{border:1px solid var(--ink);background:transparent;padding:8px 14px;font:700 12px 'Zen Kaku Gothic New';cursor:pointer}.pagination button:hover:not(:disabled),.pagination .page-number.active{background:var(--ink);color:var(--paper)}.pagination button:disabled{border-color:#aaa;color:#888;cursor:not-allowed}.page-numbers{display:flex;align-items:center;gap:4px}.pagination .page-number{min-width:34px;padding:8px}.page-ellipsis{padding:0 4px;font:14px 'DM Mono'}.closing{background:var(--ink);color:var(--paper);padding:9vw 10%}.closing>p{color:var(--acid);font-size:12px;margin:0 0 22px}.closing h2{margin:0;font-size:clamp(39px,5.8vw,75px);line-height:.98;letter-spacing:-.1em;font-weight:900}.closing a{margin-top:45px;display:inline-block;border-bottom:1px solid var(--paper);padding-bottom:4px;font-size:13px;font-weight:700}footer{max-width:1160px;margin:auto;padding:25px 4.8%;display:flex;justify-content:space-between;font:9px 'DM Mono';letter-spacing:.05em}@media(max-width:650px){main{border:0}header{height:66px}.directory{padding:0 7% 60px}.directory-head{grid-template-columns:1fr auto;padding-top:16px}.search-box{grid-column:1/-1;grid-row:2;width:100%;height:46px}.filters{padding:12px 0}.links{grid-template-columns:1fr}.site-link:nth-child(odd){margin-right:0}.site-link{min-height:76px}.site-tag{display:none}.pagination{gap:8px}.pagination button{padding:8px 10px}.pagination .page-number{min-width:30px;padding:8px}.page-numbers{gap:1px}.closing{padding:22vw 7%}footer{padding:20px 7%;font-size:8px}footer span:last-child{max-width:170px;text-align:right}}
