/* shared component styles; each layout supplies the variables */
.seg{display:inline-flex;padding:3px;border-radius:999px;background:var(--segbg);border:1px solid var(--ln);gap:2px}.seg a{padding:5px 12px;border-radius:999px;font-size:12px;font-weight:650;color:var(--mu);text-decoration:none;line-height:1.3}.seg a.on{background:var(--segon);color:var(--segontx);box-shadow:0 1px 3px rgba(0,0,0,.15)}.seg a:hover:not(.on){color:var(--tx)}
.modebtn{width:34px;height:34px;border-radius:999px;border:1px solid var(--ln);background:var(--segbg);color:var(--tx);display:grid;place-items:center;cursor:pointer;flex:none}.modebtn:hover{border-color:var(--g)}
html[data-mode=dark] .modebtn .moon,html:not([data-mode=dark]) .modebtn .sun{display:none}
.up{color:var(--g)}.dn{color:var(--r)}
.quota{font-size:11.5px;color:var(--mu);white-space:nowrap}
.landing{min-height:calc(100vh - 140px);display:grid;place-items:center;padding:40px 20px}.lwrap{max-width:760px;width:100%;text-align:center}
.landing .eyebrow{display:inline-block;font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--g);border:1px solid var(--ln);padding:6px 12px;border-radius:999px}
.landing h1{font-size:68px;line-height:1.02;letter-spacing:-.045em;margin:22px 0 16px;font-weight:800;color:var(--tx)}.landing .cur{color:var(--g);animation:bl 1s steps(1) infinite}@keyframes bl{50%{opacity:0}}
.lsub{font-size:17px;color:var(--mu);max-width:600px;margin:0 auto 28px;line-height:1.55}
.lsearch{display:flex;gap:8px;max-width:560px;margin:0 auto;padding:6px;border-radius:16px;border:1px solid var(--ln);background:var(--p);box-shadow:0 20px 50px -24px rgba(0,0,0,.35)}.lsearch:focus-within{border-color:var(--g)}
.lsearch input{flex:1;min-width:0;border:0;background:none;outline:0;color:var(--tx);font:600 18px var(--numfont,inherit);padding:0 14px;text-transform:uppercase}.lsearch input::placeholder{text-transform:none;color:var(--mu);font-weight:500}
.lsearch button{border:0;border-radius:12px;background:var(--g);color:#06210F;font:700 15px Inter;padding:14px 22px;cursor:pointer}
.chips{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin:22px auto 0;max-width:640px}.chip{display:flex;flex-direction:column;align-items:flex-start;gap:1px;padding:8px 12px;border-radius:12px;border:1px solid var(--ln);background:var(--p);text-decoration:none;color:var(--tx);min-width:118px}.chip:hover{border-color:var(--g)}.chip b{font:700 13px var(--numfont,inherit)}.chip .cq{font:12px var(--numfont,inherit);color:var(--mu)}.chip i{font-style:normal}
.feat{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:40px;text-align:left}.feat div{padding:14px;border-radius:14px;border:1px solid var(--ln);background:var(--p)}.feat b{display:block;font:700 13px var(--numfont,inherit);color:var(--g);margin-bottom:4px}.feat span{font-size:13px;color:var(--mu);line-height:1.45}
.lq{color:var(--mu);font-size:12.5px;margin-top:22px}
.xbtn{border:1px solid var(--ln);background:none;color:var(--mu);font:600 10.5px var(--numfont,Inter);padding:3px 8px;border-radius:6px;cursor:pointer;margin-left:6px}.xbtn:hover{color:var(--g);border-color:var(--g)}
.wl{display:flex;flex-direction:column;gap:7px}.wl label{font-size:11px;font-weight:600;color:var(--mu);text-transform:uppercase;letter-spacing:.07em}.wlx{margin:0 0 6px;color:var(--mu);font-size:13px;line-height:1.5}
.wlbox{display:flex;flex-wrap:wrap;gap:5px;align-items:center;min-height:38px;padding:5px 7px;border-radius:9px;border:1px solid var(--ln);background:var(--inbg);cursor:text}.wlbox input{flex:1;min-width:80px;border:0;background:none;outline:0;color:var(--tx);font:13px var(--numfont,Inter);text-transform:uppercase}
.wlchip{display:inline-flex;align-items:center;gap:4px;padding:3px 4px 3px 8px;border-radius:6px;background:var(--chipbg);color:var(--tx);font:600 12px var(--numfont,Inter)}.wlchip button{border:0;background:none;color:var(--mu);cursor:pointer;font-size:14px;line-height:1;padding:0 3px}
#wlem{height:38px;border-radius:9px;border:1px solid var(--ln);background:var(--inbg);color:var(--tx);padding:0 10px;font:14px Inter;outline:0}#wlem:focus,.wlbox:focus-within{border-color:var(--g)}
.wlfq{display:flex;gap:16px;font-size:13px;color:var(--tx)}.wlfq label{text-transform:none;letter-spacing:0;font-size:13px;color:var(--tx);font-weight:500;display:flex;gap:6px;align-items:center}.wlfq input{accent-color:var(--g)}
.wlgo{height:40px;border:0;border-radius:10px;background:var(--g);color:#06210F;font:700 14px Inter;cursor:pointer;margin-top:4px}.wlgo:hover{filter:brightness(1.07)}
.wlmsg{margin:2px 0 0;font-size:13px;min-height:18px;color:var(--mu)}.wlmsg.ok{color:var(--g)}.wlmsg.bad{color:var(--r)}
.jump{display:flex;gap:4px;overflow-x:auto;scrollbar-width:none}.jump::-webkit-scrollbar{display:none}.jump a{flex:none;padding:6px 11px;border-radius:999px;font-size:12px;font-weight:600;color:var(--mu);text-decoration:none;white-space:nowrap}.jump a:hover{color:var(--tx)}.jump a.on{color:var(--tx);background:var(--chipbg)}
.thumb{width:40px;height:40px;border-radius:7px;object-fit:cover;flex:none;background:var(--chipbg)}
@media (max-width:700px){.landing h1{font-size:42px}.lsub{font-size:15px}.feat{grid-template-columns:1fr 1fr}.lsearch input{font-size:16px}.lsearch button{padding:12px 16px}.chip{min-width:0;flex:1 1 40%}}
#tg{display:flex;gap:8px;align-items:center}
@media(max-width:480px){#tg{gap:6px}.seg a{padding:5px 8px}.hr{gap:6px;min-width:0}header input{min-width:0}}
.lwrap{box-sizing:border-box;max-width:100%}
.landing{grid-template-columns:minmax(0,1fr)}
@media(max-width:700px){.seg a{min-height:32px;display:inline-flex;align-items:center}footer a{display:inline-block;padding:6px 2px}input,select,textarea{font-size:16px}}
