:root{color-scheme:dark;--bg:#0b1410;--panel:#142219;--line:#32473a;--text:#eff9f0;--muted:#b2c5b6;--green:#99ec8b}*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 85% 0,#20452b,transparent 55%),var(--bg);color:var(--text);font:16px/1.65 system-ui,-apple-system,sans-serif}header{max-width:1200px;margin:auto;padding:28px 24px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:16px}.brand{display:flex;align-items:center;gap:14px;font-weight:800;color:var(--text);text-decoration:none}.brand small{font:11px monospace;color:var(--muted);letter-spacing:2px}.cube{width:26px;height:26px;background:var(--green);box-shadow:7px -7px 0 #4b9053,-5px 5px 0 #315b38}.tag{border:1px solid var(--line);padding:6px 12px;font-size:12px;color:var(--muted);border-radius:4px}main{max-width:1152px;margin:auto;padding:0 24px}.hero{padding:64px 0 40px;max-width:740px}.eyebrow{font:12px monospace;letter-spacing:3px;color:var(--green)}h1{font-size:clamp(36px,5vw,64px);line-height:1.2;letter-spacing:-2px;margin:24px 0}p{color:var(--muted)}h2{font-size:23px}.panel{background:var(--panel);padding:28px;border:1px solid var(--line);border-top:3px solid var(--green);max-width:760px}.row{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}input,select,button{min-height:46px;border-radius:5px;font:inherit;padding:10px 14px}input,select{border:1px solid #536858;background:#0b1710;color:var(--text);min-width:0;width:100%}input{flex:1}button{background:var(--green);color:#142318;border:1px solid var(--green);font-weight:700;cursor:pointer;transition:background .18s}button:hover{background:#bcffb0}button.secondary{background:transparent;color:var(--text);border-color:#536858}button:disabled{opacity:.45;cursor:not-allowed}label{display:block;color:var(--muted);font-size:14px}label input,label select{margin-top:7px}.filters{display:flex;align-items:end;gap:16px}.filters label:first-child{flex:2}.filters label{flex:1}.notice{padding:14px 18px;border-left:3px solid #dba758;background:#29251b;color:#f0d39d}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.card{background:var(--panel);border:1px solid var(--line);padding:22px;display:flex;flex-direction:column;gap:12px;min-width:0}.card h3{font:700 17px/1.4 system-ui;margin:0;overflow-wrap:anywhere}.card p{font-size:13px;overflow-wrap:anywhere;margin:0}.card button{margin-top:auto}nav{display:flex;justify-content:center;align-items:center;gap:24px;margin:28px 0}footer{border-top:1px solid var(--line);margin-top:50px;padding:24px 0 40px;color:var(--muted);font-size:13px}:focus-visible{outline:3px solid #deffb5;outline-offset:4px}[hidden]{display:none!important}#message{min-height:30px;color:#e4c78c;overflow-wrap:anywhere}@media(max-width:760px){.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.filters{flex-wrap:wrap}.filters label{flex:1 1 40%}header .tag{display:none}.hero{padding-top:40px}}@media(max-width:440px){main{padding:0 18px}.grid{grid-template-columns:1fr}.brand small{font-size:10px}.panel{padding:20px}.row input{flex-basis:100%}.row button{width:100%}.filters label{flex-basis:100%}.filters button{width:100%}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}
@font-face{font-family:'MC Noto Sans SC';src:url('/fonts/NotoSansSC-Regular.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}
body,.card h3{font-family:'MC Noto Sans SC',system-ui,-apple-system,'PingFang SC','Microsoft YaHei',sans-serif!important}
.howto{margin:28px 0;max-width:900px}.howto h2{font-size:19px;margin-bottom:12px}.howto p{font-size:13px}.steps{list-style:none;counter-reset:step;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.steps li{counter-increment:step;border:1px solid var(--line);padding:14px;min-width:0}.steps li:before{content:counter(step);color:var(--green);margin-right:8px}.steps strong{font-size:15px}.steps span{display:block;font-size:13px;color:var(--muted);margin-top:6px;overflow-wrap:anywhere}@media(max-width:540px){.steps{grid-template-columns:1fr;gap:8px}.steps li{padding:10px 14px}.steps span{display:inline;margin-left:8px}}
