/* DustLine — redesigned player handbook. Shared brand and navigation: styles.css. */
.rules-page{background:var(--bg);--rule-line:#ffffff17;--rule-muted:#a5afb9}
.rules-main{max-width:1800px;margin:auto;min-height:80vh}
.rules-cover{position:relative;isolation:isolate;min-height:350px;overflow:hidden;display:flex;align-items:flex-end;background:var(--panel)}
.rules-cover-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:60% 43%;z-index:-2}
.rules-cover:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#081321ed,#08132191 60%,#08132142),linear-gradient(0deg,#0b1420,transparent)}
.rules-cover-content{padding:36px 6% 42px;flex:1}.breadcrumbs{display:flex;gap:12px;font-size:11px;color:#bdc7cf;margin-bottom:28px}.breadcrumbs a:hover{color:var(--accent)}.cover-label{font-size:9px;letter-spacing:2px;color:var(--accent)}.rules-cover h1{font:600 clamp(46px,5vw,78px)/1 var(--display);letter-spacing:-1px;margin:17px 0 16px}.rules-cover h1 span:last-child{color:var(--accent)}.rules-cover p{font-size:14px;color:#bac5ce;line-height:1.8}.rules-cover-meta{display:flex;gap:30px;align-items:flex-end;padding:35px 6% 45px 20px;font-size:9px;line-height:1.8;letter-spacing:1px;color:#abb8c4}.rules-cover-meta>span{display:flex;flex-direction:column;gap:8px}.rules-cover-meta strong{font:400 48px/1 var(--display);color:var(--accent)}.cover-edition{display:none!important}
.draft-notice{margin:0 6%;border:1px solid #c6aa7033;border-left:3px solid var(--accent);background:#c6aa7008;display:flex;align-items:center;gap:15px;padding:16px 21px}.draft-notice>span{display:grid;place-items:center;color:var(--accent);width:22px;height:22px;border:1px solid #c6aa7070;border-radius:50%;flex-shrink:0;font-size:12px}.draft-notice p{font-size:12px;color:var(--muted);line-height:1.8}.draft-notice strong{color:var(--text);font-weight:500;margin-right:6px}
.rules-layout{display:grid;grid-template-columns:260px minmax(0,1fr);gap:50px;padding:46px 6% 85px;align-items:start}.category-sidebar{position:sticky;top:119px;min-width:0}.category-directory{border:1px solid var(--rule-line);background:#0f1a27}.category-directory>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:21px 19px;border-bottom:1px solid var(--rule-line);cursor:pointer;list-style:none}.directory-title{font-size:10px;font-weight:600;letter-spacing:1.6px}.directory-count{color:var(--accent);font-size:11px}.category-nav{display:block;max-height:calc(100dvh - 290px);min-height:200px;overflow-y:auto;overscroll-behavior:contain;padding:4px 10px 12px}.category-group{border-bottom:1px solid var(--rule-line);padding:7px 0}.category-group:last-child{border:0}.category-group>summary{display:flex;gap:10px;align-items:center;padding:14px 8px;list-style:none;cursor:pointer;color:#bcc5cc;font-size:10px;font-weight:600;line-height:1.7}.category-group>summary:before{content:'+';font-size:15px;color:var(--accent)}.category-group[open]>summary:before{content:'−'}.category-group>summary>span{margin-left:auto;font-size:9px;color:#8e9ba8}.category-group>div{display:grid;gap:4px}.category-nav a{display:flex;align-items:center;gap:10px;padding:13px 10px;min-height:44px;font-size:12px;line-height:1.5;color:#a6b3be;border-left:2px solid transparent;transition:background .2s,color .2s}.category-nav a>span:first-child{font-size:9px;color:#738593;min-width:15px}.category-name{overflow-wrap:anywhere}.category-arrow{margin-left:auto;color:var(--accent)}.category-nav a:hover{background:#ffffff05;color:var(--text)}.category-nav a[aria-current=true]{background:#c6aa7011;color:var(--accent);border-left-color:var(--accent)}.category-nav a[aria-current=true]>span:first-child{color:var(--accent)}.sidebar-footnote{padding:23px 20px;font-size:11px;line-height:1.9;color:#8b9aaa}.sidebar-footnote a{color:var(--accent);font-size:13px}.sidebar-footnote a:hover{text-decoration:underline;text-underline-offset:4px}summary::-webkit-details-marker{display:none}
.rules-content{min-width:0}.rules-tools{display:flex;gap:15px;align-items:flex-end;border-bottom:1px solid var(--rule-line);padding-bottom:27px}.rules-search{min-width:0;flex:1}.rules-search label{display:block;font-size:10px;letter-spacing:.6px;color:#a7b4bf;margin-bottom:11px}.search-input-wrap{display:flex;align-items:center;gap:12px;min-height:51px;padding:0 15px;border:1px solid #ffffff25;background:#101d2a}.search-input-wrap:focus-within{border-color:var(--accent)}.search-input-wrap svg{width:18px;height:18px;flex-shrink:0;stroke:var(--accent);stroke-width:1.5}.search-input-wrap input{width:100%;min-width:0;background:transparent;border:0;color:var(--text);font-size:13px;padding:16px 0;outline:none}.search-input-wrap input::placeholder{color:#7e909f}.search-input-wrap input::-webkit-search-cancel-button{display:none}.search-input-wrap button{background:transparent;border:0;color:var(--text);min-width:30px;min-height:40px;font-size:23px}.expand-actions{display:flex;gap:7px}.expand-actions button{font-size:10px;line-height:1.5;min-height:51px;padding:12px;background:transparent;border:1px solid var(--rule-line);color:#b7c2cb;white-space:nowrap}.expand-actions button:hover{border-color:var(--accent);color:var(--accent)}.expand-actions button:disabled{opacity:.4;cursor:default}.reading-label{display:flex;justify-content:space-between;gap:20px;margin:27px 0 31px;font-size:9px;letter-spacing:1.6px;color:#8296a7}
.rule-category{scroll-margin-top:118px;margin-bottom:25px}.category-top{position:relative;padding:5px 90px 30px 0;border-bottom:1px solid #c6aa7040}.category-ordinal{position:absolute;right:0;top:0;font:400 85px/1 var(--display);letter-spacing:-3px;color:#c6aa7024}.category-kicker{display:flex;flex-wrap:wrap;gap:14px;align-items:center;margin-bottom:20px}.category-kicker>span:first-child{font-size:10px;color:var(--accent);letter-spacing:.6px}.draft-tag{font-size:9px;border:1px solid #c6aa7033;padding:4px 7px;color:#baa77e}.category-top h2{font:500 clamp(34px,3.4vw,52px)/1.08 var(--display);color:var(--text);margin-bottom:13px;overflow-wrap:anywhere}.category-top p{color:#8f9fab;font-size:12px;line-height:1.7}.category-body{padding-top:18px;display:grid;gap:9px}.rule-topic{border:1px solid var(--rule-line);background:#0f1b28;scroll-margin-top:118px}.rule-topic>summary{display:flex;align-items:center;gap:16px;list-style:none;cursor:pointer;min-height:80px;padding:20px;line-height:1.5}.topic-number{font-size:10px;color:var(--accent);min-width:30px}.topic-title{font:500 23px/1.2 var(--display);color:#dfe3e3;overflow-wrap:anywhere}.topic-count{margin-left:auto;font-size:9px;color:#8395a4;white-space:nowrap}.topic-chevron{font:300 23px/1 Barlow,sans-serif;color:var(--accent);margin-left:12px;flex-shrink:0;transition:transform .2s}.rule-topic[open]{border-color:#c6aa704f}.rule-topic[open] .topic-chevron{transform:rotate(45deg)}.rule-topic>summary:hover .topic-title{color:var(--accent)}.topic-content{padding:0 25px 26px 66px}.topic-empty{font-size:13px;line-height:1.9;color:var(--muted);border-left:2px solid #c6aa7050;padding:12px 16px;background:#c6aa7005;margin-bottom:16px}.topic-permalink{font-size:10px;color:var(--accent);text-decoration:underline;text-underline-offset:4px}.rule-entry{border-top:1px solid var(--rule-line);padding:20px 0;scroll-margin-top:118px;overflow-wrap:anywhere}.rule-entry h3{font-size:18px;line-height:1.5;margin-bottom:14px}.rule-entry p{font-size:15px;line-height:1.9;color:var(--muted);max-width:75ch;margin:12px 0}
.category-pagination{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:30px 0 15px}.category-pagination a{padding:19px;border:1px solid var(--rule-line);min-width:0}.category-pagination small{display:block;font-size:8px;letter-spacing:1.3px;color:#8e9eac;margin-bottom:12px}.category-pagination a>span{display:flex;justify-content:space-between;gap:15px;font-size:13px;line-height:1.6}.category-pagination b{font-weight:400;color:var(--accent)}.category-pagination a:hover{background:#c6aa7007;border-color:#c6aa7050}.is-searching .category-pagination{display:none}.is-searching .rule-category{margin-top:35px}.rules-bottom{display:flex;justify-content:space-between;flex-wrap:wrap;gap:15px;margin-top:32px;padding-top:24px;border-top:1px solid var(--rule-line);font-size:10px;line-height:1.8;color:#8f9fae}.rules-bottom a{color:var(--accent)}
#search-status{font-size:12px;line-height:1.8;color:var(--accent);margin-bottom:23px}#search-status:empty{display:none}#empty-results{padding:45px 25px;border:1px solid var(--rule-line);background:var(--panel);text-align:center;margin-bottom:30px}#empty-results>span{font-size:35px;color:var(--accent)}#empty-results h2{font:500 32px var(--display);margin:10px 0}#empty-results p{font-size:13px;line-height:1.8;color:var(--muted);margin-bottom:20px}#reset-search{background:var(--accent);color:var(--bg);border:0;padding:13px 20px;font-size:12px}
@media(max-width:1200px){.rules-layout{grid-template-columns:230px minmax(0,1fr);gap:32px}.rules-tools{flex-wrap:wrap}.rules-search{flex-basis:100%}.expand-actions button{min-height:40px;padding:10px 14px}.rules-cover-meta{gap:20px}.topic-count{display:none}.topic-chevron{margin-left:auto}}
@media(max-width:800px){.rules-cover{min-height:330px}.rules-cover-content{padding:28px 6% 35px}.rules-cover h1{font-size:60px}.rules-cover-meta{display:none}.rules-layout{display:block;padding:30px 6% 55px}.draft-notice{align-items:flex-start;padding:14px}.draft-notice strong{display:block;margin:0 0 3px}.category-sidebar{position:static;margin-bottom:30px}.category-directory>summary:after{content:'+';font-size:20px;color:var(--accent)}.category-directory[open]>summary:after{content:'−'}.directory-count{margin-left:auto}.category-nav{max-height:340px;overscroll-behavior:auto}.category-nav a{font-size:13px;min-height:48px}.sidebar-footnote{display:none}.category-top{padding-right:65px}.category-ordinal{font-size:65px}.category-top h2{font-size:38px}.topic-title{font-size:22px}.topic-content{padding:0 20px 24px}.rule-category,.rule-topic,.rule-entry{scroll-margin-top:100px}}
@media(max-width:450px){.rules-cover h1{font-size:53px}.cover-label{font-size:8px;letter-spacing:1.3px}.category-top{padding-right:0}.category-ordinal{display:none}.category-kicker{gap:9px}.category-kicker>span:first-child{font-size:9px}.category-top h2{font-size:34px}.topic-title{font-size:21px}.rule-topic>summary{padding:17px 14px;gap:10px;min-height:75px}.topic-content{padding:0 14px 22px}.category-pagination{gap:10px}.category-pagination a{padding:15px 12px}.category-pagination a>span{font-size:12px}.category-pagination small{font-size:7px;letter-spacing:.7px}.expand-actions{width:100%}.expand-actions button{flex:1;min-height:44px}}

/* First chapter of the new rulebook. */
.rules-draft{max-width:1020px;margin:0 auto;padding:50px 6% 80px}
.chapter-heading{padding-bottom:30px}
.chapter-heading>.draft-tag{display:inline-block;margin-left:15px}
.chapter-heading h2{font:500 clamp(34px,4vw,54px)/1.1 var(--display);margin:20px 0 15px;color:var(--text)}
.chapter-heading>p{font-size:13px;line-height:1.8;color:var(--muted)}
.rules-draft .rule-entry{padding:29px 0}
.rules-draft .rule-entry h3{display:flex;align-items:baseline;gap:17px;font:500 clamp(23px,2.4vw,30px)/1.3 var(--display)}
.rules-draft .rule-entry h3>span{color:var(--accent);font:500 12px Barlow,sans-serif;min-width:24px}
.rules-draft .rule-entry p{font-size:15px;max-width:none}
.rules-draft .rule-example{border-left:2px solid var(--accent);padding:12px 18px;background:#c6aa7007;font-size:14px}
.rules-draft strong{color:var(--text);font-weight:600}
@media(max-width:600px){.rules-draft{padding:32px 6% 55px}.chapter-heading>.draft-tag{display:table;margin:12px 0 0}.rules-draft .rule-entry p{font-size:14px}.rules-draft .rule-entry h3{gap:12px}}
/* Categories stay separate from the fully expanded rule text. */
.rules-book-layout{display:grid;grid-template-columns:270px minmax(0,1fr);align-items:start;gap:65px;max-width:1500px;margin:auto;padding:50px 6% 80px}
.rules-categories{position:sticky;top:118px;border:1px solid var(--rule-line);background:#0f1a27}
.rules-categories-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:21px 20px;border-bottom:1px solid var(--rule-line)}
.rules-categories-heading h2{font:600 11px Barlow,sans-serif;text-transform:uppercase;letter-spacing:1.5px}
.rules-categories-heading>span{font-size:10px;color:var(--accent)}
.rules-categories nav{padding:10px}
.rules-category-link{display:flex;align-items:flex-start;gap:12px;padding:17px 12px;border-left:2px solid var(--accent);background:#c6aa7010;color:var(--accent);scroll-margin-top:118px}
.rules-category-number{font-size:10px;padding-top:3px}
.rules-category-link strong{display:block;font-size:13px;font-weight:500;line-height:1.65}
.rules-category-link small{display:block;font-size:10px;color:var(--muted);margin-top:7px}
.rules-category-link>span:last-child{margin-left:auto;font-size:16px}
.rules-category-link:hover{background:#c6aa701a}
.rules-book-layout .rules-draft{max-width:none;width:100%;margin:0;padding:0;min-width:0;scroll-margin-top:118px}
.rules-book-layout .chapter-heading>.cover-label{display:block;font-size:9px;line-height:1.8}
.rules-book-layout .chapter-heading>.draft-tag{margin:14px 0 0}
.rules-book-layout .chapter-heading h2{font-size:clamp(34px,3.5vw,52px)}
@media(max-width:1000px){.rules-book-layout{grid-template-columns:230px minmax(0,1fr);gap:35px;padding-inline:5%}}
@media(max-width:800px){.rules-book-layout{grid-template-columns:1fr;gap:32px;padding:30px 6% 55px}.rules-categories{position:static}.rules-categories-heading{padding:17px 18px}.rules-category-link{padding:13px}.rules-book-layout .rules-draft{scroll-margin-top:98px}.rules-category-link strong{font-size:14px}}
.rules-chapters{min-width:0}
.rules-chapters>.rules-draft+.rules-draft{margin-top:60px;border-top:1px solid #c6aa7055;padding-top:45px}
.rules-categories nav{display:grid;gap:7px}
.rules-category-link{border-left-color:transparent;background:transparent;color:var(--muted)}
.rules-category-link[aria-current=location]{border-left-color:var(--accent);background:#c6aa7010;color:var(--accent)}
@media(max-width:800px){.rules-chapters>.rules-draft+.rules-draft{margin-top:35px;padding-top:30px}}

.rule-subgroup{font:600 12px Barlow,sans-serif;letter-spacing:1.5px;text-transform:uppercase;color:var(--accent);margin:12px 0 20px}.rule-entry+.rule-subgroup{margin-top:40px}

.rules-categories nav{max-height:calc(100dvh - 210px);overflow-y:auto;overscroll-behavior:contain;scrollbar-color:var(--accent) var(--bg);scrollbar-width:thin}
@media(max-width:800px){.rules-categories nav{max-height:none;overflow:visible;overscroll-behavior:auto}}

/* Search, direct links and progressive category navigation. */
[hidden]{display:none!important}
.rule-controls{margin-bottom:30px;scroll-margin-top:118px}.rule-controls label{font-size:12px;letter-spacing:.3px}.rule-controls #search-status{margin:14px 0}.mobile-category{display:none}
.rules-interactive .rules-chapters>.rules-draft+.rules-draft{margin-top:0;padding-top:0;border-top:0}
.rules-interactive .rules-draft:not([hidden])~.rules-draft:not([hidden]){margin-top:40px;padding-top:30px;border-top:1px solid var(--rule-line)}
.rule-copy{margin-left:auto;flex:0 0 44px;min-height:44px;display:grid;place-items:center;background:transparent;border:1px solid var(--rule-line);color:var(--accent);cursor:pointer;border-radius:6px}.rule-copy svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.5}.rule-copy:hover{background:#c6aa7018;border-color:var(--accent)}
.rules-draft .rule-entry h3{align-items:center}.rule-entry:target{background:#c6aa700b;box-shadow:-3px 0 var(--accent);padding-inline:15px}
#copy-status{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);z-index:30;background:#142132;border:1px solid var(--accent);color:var(--text);padding:12px 18px;font-size:13px;max-width:90vw}#copy-status:empty{display:none}#manual-link{width:100%;padding:14px;background:var(--bg);color:var(--text);border:1px solid var(--accent);font-size:14px;margin-bottom:20px}
.rule-controls button:focus-visible,.rule-copy:focus-visible,#category-select:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
@media(max-width:800px){.rules-interactive .rules-categories{display:none}.rules-interactive .rules-book-layout{display:block}.mobile-category{display:grid;gap:10px;margin-top:18px}#category-select{width:100%;min-width:0;min-height:48px;background:#101d2a;color:var(--text);border:1px solid #ffffff25;padding:12px;font:inherit;font-size:14px}.search-input-wrap input{font-size:16px}.rules-cover{min-height:240px}.rules-cover h1{font-size:48px}.breadcrumbs{margin-bottom:18px}.rule-copy{flex-basis:44px}.rules-draft .rule-entry h3{font-size:24px;gap:9px}}
