:root{--danger:#ff5a5a}.rules-wrap{padding:28px 32px 60px;display:grid;grid-template-columns:260px 1fr;gap:24px}.toc{position:sticky;top:82px;align-self:start;padding:18px 0;max-height:calc(100vh - 96px);overflow-y:auto;scrollbar-width:thin}.toc::-webkit-scrollbar{width:3px}.toc::-webkit-scrollbar-thumb{background:var(--bg-3);border-radius:2px}.toc-title{font-family:var(--font-jetbrains-mono),monospace;font-size:var(--fs-10-5);letter-spacing:.08em;text-transform:uppercase;color:var(--fg-3);padding:0 10px 10px}.toc a{display:flex;align-items:center;gap:10px;padding:7px 10px;border-radius:6px;font-size:var(--fs-13);color:var(--fg-1);line-height:1.3;border-left:2px solid transparent}.toc a.cur,.toc a:hover{background:var(--bg-2);color:var(--fg-0)}.toc a.cur{border-left-color:var(--accent)}.toc a .n{font-family:var(--font-jetbrains-mono),monospace;font-size:var(--fs-11);color:var(--fg-3);min-width:22px}.toc a.cur .n{color:var(--accent-2)}.rules-body{min-width:0;display:flex;flex-direction:column;gap:22px}.rules-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.section-card{background:var(--bg-1);border:1px solid var(--line);border-radius:12px;padding:22px 24px;scroll-margin-top:90px}.section-card h2{font-size:18px;font-weight:800;letter-spacing:-.01em;margin:0 0 4px;display:flex;align-items:center;gap:10px}.section-card h2 .num{font-size:var(--fs-13);font-weight:700;color:var(--accent);padding:2px 9px;background:rgba(255,122,69,.1);border:1px solid rgba(255,122,69,.25);border-radius:6px}.section-card h2 .num,.section-card h2 .tag-n{font-family:var(--font-jetbrains-mono),monospace}.section-card h2 .tag-n{font-size:var(--fs-11);color:var(--fg-3);padding:2px 8px;border:1px solid var(--line);border-radius:999px;font-weight:500}.section-card .sub{color:var(--fg-2);font-size:var(--fs-12-5);margin-bottom:14px}.rule{padding:12px 0;border-bottom:1px solid var(--line-2);font-size:var(--fs-13-5);line-height:1.6}.rule:last-child{border-bottom:none}.rule-head{display:flex;align-items:flex-start;gap:10px}.rule-n{font-family:var(--font-jetbrains-mono),monospace;font-size:var(--fs-11);font-weight:700;color:var(--fg-2);padding:2px 8px;margin-top:1px;background:var(--bg-3);border:1px solid var(--line);border-radius:4px;flex-shrink:0;min-width:38px;text-align:center}.rule-text{flex:1 1;color:var(--fg-1)}.rule-text b{color:var(--fg-0);font-weight:600}.rule-text em{font-style:normal;color:var(--accent-2);font-weight:600}.rule-text .high{background:rgba(255,122,69,.1);padding:0 3px;border-radius:2px}.rule-list{list-style:none;padding:8px 0 0;margin:0}.rule-list li{position:relative;padding:3px 0 3px 20px;color:var(--fg-1);font-size:var(--fs-13)}.rule-list li:before{content:"";position:absolute;left:8px;top:11px;width:4px;height:4px;background:var(--accent);border-radius:50%}.punish{display:inline-flex;align-items:center;gap:8px;margin-top:8px;padding:6px 10px;border-radius:6px;background:rgba(255,90,90,.08);border:1px solid rgba(255,90,90,.25);font-size:var(--fs-12);line-height:1.4;color:var(--fg-1);font-family:inherit}.punish .p-label{font-family:var(--font-jetbrains-mono),monospace;font-size:var(--fs-10);font-weight:700;color:var(--danger);text-transform:uppercase;letter-spacing:.06em;padding-right:8px;border-right:1px solid rgba(255,90,90,.25);flex-shrink:0}.punish .p-text{color:var(--fg-1);font-weight:500}.punish .p-text b{color:var(--fg-0)}.punish.warn{background:rgba(251,191,36,.08);border-color:rgba(251,191,36,.25)}.punish.warn .p-label{color:var(--warn);border-right-color:rgba(251,191,36,.25)}.glos-item{padding:10px 0;border-bottom:1px solid var(--line-2);font-size:var(--fs-13-5);line-height:1.55}.glos-item:last-child{border-bottom:none}.term{display:inline-block;font-family:var(--font-jetbrains-mono),monospace;font-size:var(--fs-11);font-weight:700;padding:2px 8px;margin-right:4px;background:var(--bg-3);border:1px solid var(--line);border-radius:4px;color:var(--accent-2);text-transform:uppercase;letter-spacing:.04em;vertical-align:baseline}.glos-item .d{color:var(--fg-1)}.glos-item .d b{color:var(--fg-0);font-weight:600}@media (max-width:1200px){.rules-wrap{grid-template-columns:220px 1fr}.page-head-grid,.rules-grid{grid-template-columns:1fr}.page-head-grid{gap:18px}}@media (max-width:960px){.rules-wrap{grid-template-columns:1fr}.toc{position:static;max-height:none}}@media (max-width:640px){.page-head-wrap{padding:20px 14px 16px}.rules-wrap{padding:20px 14px 40px}.page-head h1{font-size:32px}.legal-banner{flex-wrap:wrap}}