/* ============ HogwartsRP Regelwerk ============ */
body.page-rules{background-position:center top}

body.page-rules::before{background:linear-gradient(180deg,rgba(7,10,15,.73),rgba(8,11,16,.91) 58%,rgba(7,9,13,.97))}

.rules-hero{min-height:400px;padding:128px 1.5rem 3.5rem;display:grid;place-items:center;text-align:center;position:relative;overflow:hidden}

.rules-hero::before{content:'';position:absolute;inset:0;background:radial-gradient(circle at 50% 15%,rgba(214,174,66,.2),transparent 38%),linear-gradient(180deg,rgba(4,7,12,.12),rgba(7,10,15,.88)),url('../img/home_bg_fallback.webp') center 32%/cover no-repeat;filter:saturate(.8)}

.rules-hero::after{content:'';position:absolute;inset:auto 0 0;height:150px;background:linear-gradient(transparent,#0b0f15)}

.rules-hero-inner{position:relative;z-index:2;max-width:900px}

.rules-kicker{display:inline-flex;align-items:center;gap:.55rem;padding:.42rem .75rem;border:1px solid rgba(214,174,66,.5);border-radius:999px;background:rgba(11,14,19,.7);color:#e7c96f;font-size:.69rem;font-weight:850;letter-spacing:.19em;text-transform:uppercase}

.rules-kicker::before{content:'§';font-size:.8rem}

.rules-hero h1{font-family:"Harry Potter",Georgia,serif;font-size:clamp(3rem,7vw,5.4rem);line-height:1;color:var(--accent-gold);text-shadow:0 0 35px rgba(244,196,48,.34),0 6px 24px rgba(0,0,0,.8);margin:1rem 0 .85rem}

.rules-hero p{max-width:760px;margin:0 auto;color:#d2c2a8;font-size:1.05rem;line-height:1.8}

.rules-stats{display:grid;grid-template-columns:repeat(3,minmax(120px,1fr));gap:.75rem;max-width:620px;margin:1.7rem auto 0}

.rules-stat{border:1px solid rgba(214,174,66,.38);background:rgba(13,17,23,.78);backdrop-filter:blur(12px);border-radius:10px;padding:.85rem 1rem;box-shadow:0 12px 35px rgba(0,0,0,.22)}

.rules-stat strong{display:block;color:#fff4cd;font-size:1.55rem;line-height:1.1}

.rules-stat span{display:block;color:#a99a84;font-size:.69rem;letter-spacing:.11em;text-transform:uppercase;margin-top:.35rem}

.rules-shell{max-width:1080px;margin:-1.5rem auto 5rem;padding:0 1.5rem;position:relative;z-index:3}

.rules-toolbar{position:sticky;top:74px;z-index:30;background:rgba(12,16,22,.94);border:1px solid rgba(214,174,66,.42);box-shadow:0 14px 45px rgba(0,0,0,.38);backdrop-filter:blur(18px);border-radius:14px;padding:1rem;margin-bottom:1rem}

.rules-search-row{display:grid;grid-template-columns:minmax(250px,1fr) auto;gap:1rem;align-items:center}

.rules-search{position:relative}

.rules-search::before{content:'⌕';position:absolute;left:1rem;top:50%;transform:translateY(-54%);color:#d6ae42;font-size:1.4rem;pointer-events:none}

.rules-search input{width:100%;border:1px solid #4d4433;background:#0b0f15;color:#fef9f0;border-radius:9px;padding:.86rem 1rem .86rem 2.75rem;font-size:.95rem;outline:none;transition:.22s;user-select:text}

.rules-search input:focus{border-color:#d6ae42;box-shadow:0 0 0 3px rgba(214,174,66,.12)}

.rules-search-hint{position:absolute;right:.85rem;top:50%;transform:translateY(-50%);color:#5f5646;font-size:.72rem;border:1px solid #4d4433;border-radius:5px;padding:.1rem .38rem;pointer-events:none}

.rules-toggle-row{display:flex;align-items:center;gap:.5rem;white-space:nowrap}

.rules-toggle{border:1px solid #49402f;background:#141920;color:#cdbfa9;border-radius:8px;padding:.55rem .7rem;font-size:.72rem;font-weight:750;cursor:pointer;transition:.22s}

.rules-toggle:hover{border-color:#d6ae42;color:#fff4cd}

.rules-filter-row{display:flex;gap:.55rem;overflow-x:auto;padding-top:.85rem;scrollbar-width:none}

.rules-filter-row::-webkit-scrollbar{display:none}

.rules-filter{flex:0 0 auto;border:1px solid #49402f;background:#141920;color:#cdbfa9;border-radius:999px;padding:.55rem .85rem;font-size:.73rem;font-weight:750;letter-spacing:.04em;cursor:pointer;transition:.22s}

.rules-filter:hover,.rules-filter.active{border-color:#d6ae42;background:linear-gradient(135deg,#ad7920,#d3a632);color:#0b0e13;box-shadow:0 5px 18px rgba(214,174,66,.2)}

.rules-summary{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin:0 0 1.4rem;padding:.9rem 1rem;border-left:3px solid #d6ae42;background:rgba(18,23,30,.76);color:#bbaa90;font-size:.82rem;border-radius:0 8px 8px 0}

.rules-summary strong{color:#f4d77e}

.rules-toc{display:flex;flex-wrap:wrap;gap:.5rem}

.rules-toc a{border:1px solid rgba(214,174,66,.3);color:#cdbfa9;font-size:.72rem;text-decoration:none;padding:.32rem .6rem;border-radius:999px;transition:.2s}

.rules-toc a:hover{border-color:#d6ae42;color:#fff4cd}

.rules-group{margin:0 0 1.75rem;background:rgba(10,14,20,.54);border:1px solid rgba(255,255,255,.08);border-radius:15px;overflow:hidden;box-shadow:0 18px 55px rgba(0,0,0,.26);scroll-margin-top:170px}

.rules-group-head{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:1rem;padding:1.15rem 1.25rem;border-bottom:1px solid rgba(255,255,255,.08);background:linear-gradient(90deg,rgba(214,174,66,.09),rgba(13,17,23,.92) 45%)}

.rules-emblem{width:52px;height:52px;border-radius:13px;display:grid;place-items:center;font-family:Georgia,serif;font-size:1.35rem;font-weight:800;color:#fff7de;background:#332715;border:1px solid #d6ae42;box-shadow:0 0 25px rgba(214,174,66,.18)}

.rules-heading-copy span{display:block;color:#a3937c;font-size:.65rem;letter-spacing:.17em;text-transform:uppercase;font-weight:800}

.rules-heading-copy h2{font-family:Georgia,'Times New Roman',serif;color:#fff7df;font-size:1.45rem;margin:.1rem 0 0}

.rules-group-count{text-align:right}

.rules-group-count strong{display:block;color:#edca60;font-size:1.3rem;line-height:1}

.rules-group-count span{display:block;color:#8f8576;font-size:.65rem;text-transform:uppercase;letter-spacing:.09em;margin-top:.25rem}

.rules-general .rules-emblem{background:linear-gradient(145deg,#3e668c,#162333)}

.rules-conduct .rules-emblem{background:linear-gradient(145deg,#216c6f,#10292b)}

.rules-roleplay .rules-emblem{background:linear-gradient(145deg,#5f477f,#21182c)}

.rules-characters .rules-emblem{background:linear-gradient(145deg,#7f1d2d,#32111a);border-color:#d6ae42}

.rules-combat .rules-emblem{background:linear-gradient(145deg,#9b7717,#2d250d);border-color:#efd15b}

.rules-discord .rules-emblem{background:linear-gradient(145deg,#1d477e,#101e35);border-color:#b7833d}

.rules-penalty .rules-emblem{background:linear-gradient(145deg,#3a2d49,#15101d);border-color:#a8434d}

.rules-list{display:grid;padding:.5rem}

.rule-card{border-bottom:1px solid rgba(255,255,255,.06);padding:.25rem .75rem;transition:background-color .4s ease}

.rule-card:last-child{border-bottom:none}

.rule-card.is-highlighted{background-color:rgba(214,174,66,.14);border-radius:10px}

.rule-card summary{list-style:none;display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:.75rem;padding:.9rem .25rem;cursor:pointer}

.rule-card summary::-webkit-details-marker{display:none}

.rule-card summary::after{content:'▾';color:#7c7364;font-size:.75rem;transition:transform .2s ease}

.rule-card[open] summary::after{transform:rotate(180deg)}

.rule-anchor{color:#8d7438;font-family:Georgia,serif;font-weight:800;font-size:.92rem;text-decoration:none;min-width:2.6rem}

.rule-anchor:hover{color:#d6ae42;text-decoration:underline}

.rule-title{font-family:Georgia,'Times New Roman',serif;color:#fff8e8;font-size:1.05rem;line-height:1.3}

.rule-tag{display:inline-flex;align-items:center;border-radius:999px;padding:.27rem .6rem;font-size:.6rem;font-weight:900;letter-spacing:.08em;border:1px solid;white-space:nowrap;text-transform:uppercase}

.rule-tag--info{color:#8fb8d2;border-color:#33566c;background:rgba(51,86,108,.16)}

.rule-tag--warn{color:#e6c65f;border-color:#806c32;background:rgba(128,108,50,.13)}

.rule-tag--kick{color:#e8a866;border-color:#8a5a25;background:rgba(138,90,37,.16)}

.rule-tag--ban{color:#e88c8c;border-color:#8a3232;background:rgba(138,50,50,.16)}

.rule-tag--situational{color:#c9a9e6;border-color:#5f3f80;background:rgba(95,63,128,.16)}

.rule-body{color:#c2b6a3;font-size:.92rem;line-height:1.75;padding:0 .25rem 1.1rem 3.35rem}

.rules-no-results{text-align:center;padding:4rem 1rem;border:1px dashed #65542d;border-radius:14px;background:rgba(13,17,23,.8);color:#baa98e}

.rules-no-results strong{display:block;color:#f1cf69;font-family:Georgia,serif;font-size:1.3rem;margin-bottom:.35rem}

.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}

@media (max-width:760px){
  .rules-hero{padding-top:105px;min-height:360px}
  .rules-shell{padding:0 1rem}
  .rules-toolbar{top:66px}
  .rules-search-row{grid-template-columns:1fr}
  .rules-toggle-row{justify-content:flex-start}
  .rules-summary{align-items:flex-start;flex-direction:column}
  .rules-stats{grid-template-columns:repeat(3,1fr);gap:.45rem}
  .rules-stat{padding:.7rem .4rem}
  .rules-stat strong{font-size:1.25rem}
  .rules-stat span{font-size:.54rem}
  .rules-hero h1{font-size:clamp(2rem,10vw,2.45rem)}
  .rules-hero p{font-size:.91rem}
  .rule-card summary{grid-template-columns:auto 1fr;row-gap:.4rem}
  .rule-tag{grid-column:1/-1;justify-self:start}
  .rule-body{padding-left:2.6rem}
  .rules-group-head{padding:1rem}
  .rules-emblem{width:46px;height:46px}
  .rules-heading-copy h2{font-size:1.15rem}
}
