/* Rules page */
.rule-item{background:var(--card-bg);border:1px solid var(--border-color);border-radius:20px;overflow:hidden}.rule-header{display:flex;align-items:center;justify-content:space-between;width:100%;padding:20px 24px;background:transparent;border:none;cursor:pointer;text-align:left;font-family:inherit;gap:16px}.rule-title{flex:1;font-size:16px;font-weight:500;color:var(--text-primary);margin:0}.rule-toggle{display:flex;align-items:center;justify-content:center;width:28px;height:28px;flex-shrink:0;transition:transform .3s ease}.rule-toggle   svg{width:20px;height:20px;color:var(--text-muted)}.rule-item.expanded   .rule-toggle{transform:rotate(180deg)}.rule-content{margin:0;padding:0 24px 24px;animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.mod-checker-tag{display:inline-block;margin-left:8px;padding:2px 8px;font-size:11px;font-weight:500;background:var(--accent);color:var(--accent-dark, #000);border-radius:999px;vertical-align:middle}.mod-checker-body{display:flex;flex-direction:column;gap:16px}.mod-checker-desc{font-size:14px;color:var(--text-secondary);line-height:1.55;margin:0}.mod-checker-desc   code{background:var(--bg-element);padding:1px 6px;border-radius:4px;font-size:12px;color:var(--text-primary)}.mod-checker-drop{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:24px;border:1.5px dashed var(--border-light);border-radius:14px;text-align:center;cursor:pointer;transition:border-color .2s,background .2s;background:var(--bg-element)}.mod-checker-drop:hover, .mod-checker-drop.drag-over{border-color:var(--accent)}.mod-checker-drop.busy{cursor:progress;opacity:.85}.mod-checker-icon{width:32px;height:32px;color:var(--text-secondary)}.mod-checker-drop-text{font-size:14px;color:var(--text-primary);margin:0}.mod-checker-drop-hint{font-size:12px;color:var(--text-muted);margin:0}.mod-checker-spinner{width:28px;height:28px;border:2.5px solid var(--border-light);border-top-color:var(--accent);border-radius:50%;animation:mod-spin .8s linear infinite}@keyframes mod-spin{to{transform:rotate(360deg)}}.mod-checker-error{padding:12px 14px;background:#ef44441f;border:1px solid rgba(239,68,68,.4);border-radius:10px;color:#fca5a5;font-size:13px}.mod-checker-result-wrap{position:relative}.mod-checker-nav{display:inline-flex;align-items:center;gap:6px;padding:4px;background:var(--bg-card-dark, rgba(255, 255, 255, .03));border:1px solid var(--border-light);border-radius:999px}.mod-checker-nav-btn{width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;border:none;background:transparent;color:var(--text-secondary);cursor:pointer;border-radius:50%;transition:background .15s,color .15s,opacity .15s;padding:0}.mod-checker-nav-btn:hover:not(:disabled){background:var(--card-bg-hover, var(--bg-element));color:var(--text-primary)}.mod-checker-nav-btn:disabled{opacity:.35;cursor:not-allowed}.mod-checker-nav-btn   svg{width:16px;height:16px}.mod-checker-result{display:flex;flex-direction:column;gap:14px;padding:18px;border:1px solid var(--border-light);border-radius:14px;background:var(--bg-element)}.mod-checker-result[data-kind=good]{border-color:#22c55e80}.mod-checker-result[data-kind=warn]{border-color:#eab30880}.mod-checker-result[data-kind=bad]{border-color:#ef444480}.mod-checker-result-head{display:flex;align-items:center;gap:14px}.mod-checker-verdict-icon{display:flex;width:40px;height:40px;flex-shrink:0;align-items:center;justify-content:center;border-radius:50%}.mod-checker-verdict-icon   svg{width:32px;height:32px}.mod-checker-verdict-icon[data-kind=good]{color:#22c55e}.mod-checker-verdict-icon[data-kind=warn]{color:#eab308}.mod-checker-verdict-icon[data-kind=bad]{color:#ef4444}.mod-checker-result-title{flex:1;min-width:0}.mod-checker-result-title   h3{margin:0 0 4px;font-size:17px;font-weight:600;color:var(--text-primary)}.mod-checker-result-name{margin:0;font-size:12px;color:var(--text-muted);word-break:break-all}.mod-checker-download{flex-shrink:0;display:inline-flex;align-items:center;gap:6px;padding:8px 14px;background:#ffffff0d;border:1px solid var(--border-light);border-radius:10px;color:var(--text-primary);font-size:13px;font-weight:500;cursor:pointer;transition:background .15s,border-color .15s,color .15s}.mod-checker-download:hover{background:var(--accent);border-color:var(--accent);color:var(--accent-dark, #000)}.mod-checker-download   svg{width:16px;height:16px}.mod-checker-reasons{display:flex;flex-wrap:wrap;gap:6px}.mod-checker-chip{padding:4px 10px;font-size:12px;background:#ffffff0f;border:1px solid var(--border-light);border-radius:999px;color:var(--text-primary)}.mod-checker-result[data-kind=bad]   .mod-checker-chip{background:#ef44441f;border-color:#ef444459;color:#fca5a5}.mod-checker-result[data-kind=warn]   .mod-checker-chip{background:#eab3081f;border-color:#eab30859;color:#fde68a}.mod-checker-archive{display:flex;flex-direction:column;gap:6px;padding-top:4px}.mod-checker-archive-title{font-size:12px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.6px;margin-bottom:2px}.mod-checker-archive-item{display:grid;grid-template-columns:110px 1fr auto;gap:10px;align-items:center;padding:8px 12px;border-radius:8px;background:#ffffff06;border:1px solid transparent;font-size:12px}.mod-checker-archive-item[data-kind=good]{border-color:#22c55e40}.mod-checker-archive-item[data-kind=warn]{border-color:#eab3084d}.mod-checker-archive-item[data-kind=bad]{border-color:#ef44444d}.mod-checker-archive-verdict{font-weight:600;color:var(--text-primary);font-size:11px;text-transform:uppercase;letter-spacing:.5px}.mod-checker-archive-item[data-kind=good]   .mod-checker-archive-verdict{color:#22c55e}.mod-checker-archive-item[data-kind=warn]   .mod-checker-archive-verdict{color:#eab308}.mod-checker-archive-item[data-kind=bad]   .mod-checker-archive-verdict{color:#ef4444}.mod-checker-archive-name{color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mod-checker-archive-reasons{color:var(--text-muted);font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:220px}.mod-checker-archive-skipped{font-size:11px;color:var(--text-muted);font-style:italic;margin-top:4px}.mod-checker-meta{display:flex;flex-direction:column;gap:4px;font-size:13px;color:var(--text-secondary)}.mod-checker-meta   span{color:var(--text-muted)}.mod-checker-cached{font-size:12px;font-style:italic;color:var(--text-muted)}.mod-checker-modrinth{margin-bottom:12px;padding:8px 12px;border-radius:8px;font-size:13px;line-height:1.45;color:var(--text-secondary);background:#50c8781a;border:1px solid rgba(80,200,120,.28)}.mod-checker-modrinth   strong{color:var(--text-primary)}.mod-checker-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px}.mod-checker-actions:empty{display:none}.mod-checker-reset{padding:8px 16px;background:transparent;border:1px solid var(--border-light);border-radius:10px;color:var(--text-primary);font-size:13px;cursor:pointer;transition:background .2s}.mod-checker-reset:hover{background:var(--card-bg-hover, var(--bg-element))}.mod-checker-pager{font-size:12px;color:var(--text-muted);font-variant-numeric:tabular-nums;padding:0 4px;min-width:30px;text-align:center}@media (max-width: 640px){.mod-checker-result-head{flex-wrap:wrap}.mod-checker-nav{margin-left:auto}.mod-checker-drop{padding:20px 16px}.mod-checker-archive-item{grid-template-columns:1fr;gap:4px}.mod-checker-archive-reasons{max-width:none}.mod-checker-actions{flex-wrap:wrap;gap:8px}}
.rules-page{padding:120px 0 60px;min-height:calc(100vh - 160px)}.container{max-width:900px;margin:0 auto;padding:0 20px}.rules-header{margin-bottom:32px}.rules-title{font-size:32px;font-weight:600;color:var(--text-primary);margin-bottom:8px;letter-spacing:-.5px}.rules-subtitle{font-size:15px;color:var(--text-muted)}.applications-section{margin-bottom:32px}.applications-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.applications-title{font-size:18px;font-weight:500;color:var(--text-primary);margin:0}.rules-updated{font-size:13px;color:var(--text-muted);margin:0}.applications-warning{display:flex;align-items:flex-start;gap:12px;padding:16px 20px;margin-bottom:16px;background:#ffc1071a;border:1px solid rgba(255,193,7,.3);border-radius:10px}.applications-warning   svg{flex-shrink:0;width:24px;height:24px;color:#ffc107f2}.rule-content--applications{display:flex;flex-direction:column;gap:0}.applications-warning   p{margin:0;font-size:14px;line-height:1.6;color:var(--text-primary)}.applications-list{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;align-items:stretch}.application-item{display:grid;grid-template-columns:40px 1fr 14px;align-items:start;gap:12px;padding:14px 16px;background:var(--card-bg);border:1px solid var(--border-color);border-radius:12px;text-decoration:none;transition:background .2s ease,border-color .2s ease,transform .15s ease;min-height:96px;height:100%}.application-item:hover{background:var(--card-bg-hover);border-color:var(--accent);transform:translateY(-1px)}.application-icon{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:10px;background:#6384ff1f;color:var(--accent);flex-shrink:0;margin-top:2px}.application-icon   svg{width:20px;height:20px}.application-text{display:flex;flex-direction:column;gap:4px;min-width:0}.application-name{font-size:14px;font-weight:600;color:var(--text-primary);line-height:1.25;letter-spacing:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.application-description{font-size:12px;line-height:1.4;color:var(--text-muted);display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;word-break:normal;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto}.application-arrow{display:inline-flex;align-items:center;justify-content:center;color:var(--text-muted);opacity:.5;transition:transform .2s ease,opacity .2s ease,color .2s ease;margin-top:14px}.application-arrow   svg{width:12px;height:12px}.application-item:hover   .application-arrow{color:var(--accent);opacity:1;transform:translate(2px)}.rules-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;color:var(--text-muted);font-size:14px}.loading-spinner{width:32px;height:32px;border:2px solid var(--card-bg);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite;margin-bottom:12px}@keyframes spin{to{transform:rotate(360deg)}}.rules-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center;color:var(--text-muted);font-size:15px}.rules-empty   svg{width:48px;height:48px;margin-bottom:16px;opacity:.4}.rules-list{display:flex;flex-direction:column;gap:16px}.rule-item{background:var(--card-bg);border:1px solid var(--border-color);border-radius:20px;overflow:hidden}.rule-header{display:flex;align-items:center;justify-content:space-between;width:100%;padding:20px 24px;background:transparent;border:none;cursor:pointer;text-align:left;font-family:inherit;gap:16px}.rule-title{flex:1;font-size:16px;font-weight:500;color:var(--text-primary);margin:0}.rule-toggle{display:flex;align-items:center;justify-content:center;width:28px;height:28px;flex-shrink:0;transition:transform .3s ease}.rule-toggle   svg{width:20px;height:20px;color:var(--text-muted)}.rule-item.expanded   .rule-toggle{transform:rotate(180deg)}.rule-content{list-style:none;margin:0;padding:0 24px 24px;animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.rule-content   li{position:relative;padding-left:56px;padding-top:12px;padding-bottom:12px;font-size:14px;line-height:1.7;color:var(--text-muted);border-top:1px solid var(--border-light);white-space:pre-wrap;word-wrap:break-word;overflow-wrap:break-word}.rule-content   li:first-child{border-top:none}.rule-content   li:before{content:attr(data-number);position:absolute;left:0;top:12px;font-size:14px;font-weight:600;color:var(--accent);min-width:44px}@media (max-width: 768px){.rules-page{padding:120px 0 40px}.rules-title{font-size:26px}.applications-list{grid-template-columns:repeat(2,1fr)}.rule-header{padding:16px 20px}.rule-title{font-size:15px}.rule-content{padding:0 20px 20px}.rule-content   li{padding-left:48px;font-size:13px}.rule-content   li:before{min-width:40px}}@media (max-width: 480px){.rules-title{font-size:24px}.applications-list{grid-template-columns:1fr}.rule-content   li{padding-left:44px}}
