:root{--paper:#f6f4ee;--white:#fffefa;--ink:#26332f;--muted:#7c8278;--line:#e2e4da;--red:#9d4035;--gold:#aa9563;--green:#1c2927;--body-size:16px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--ink);font-family:"Noto Sans CJK SC","PingFang SC","Microsoft YaHei",system-ui,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input{font:inherit}button,a,input{ -webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:default}button:focus-visible,a:focus-visible{outline:2px solid var(--red);outline-offset:4px}button{color:inherit}button:disabled{opacity:.45}.serif,h1,h2,h3,h4{font-family:"Noto Serif CJK SC","Songti SC",SimSun,serif}h1,h2,h3,h4,p{margin:0}button{border:0;background:none}.sidebar{width:258px;background:var(--green);color:#e3e8df;position:fixed;inset:0 auto 0 0;z-index:35;display:flex;flex-direction:column;padding:34px 23px 22px;overflow-y:auto}.brand{display:flex;align-items:center;gap:13px;font-family:"Songti SC",serif;font-size:19px;letter-spacing:.5px;font-weight:700}.brand-mark{border:1px solid #84927b;width:40px;height:43px;display:grid;place-items:center;font-size:26px;color:#c5b78f;position:relative}.brand-mark:before{content:"";position:absolute;inset:3px;border:1px solid #6f7868}.brand small{display:block;font-family:system-ui;font-size:7px;letter-spacing:1.3px;color:#92a092;margin-top:8px;font-weight:400}.side-search{display:flex;align-items:center;gap:8px;color:#acb7aa;border:1px solid #405049;padding:10px 9px;margin:31px 0 29px;text-align:left;border-radius:3px;font-size:12px}.side-search>span{font-size:23px;line-height:16px}.side-search kbd{margin-left:auto;font-size:11px;border:1px solid #4b5d52;border-radius:2px;padding:0 4px;color:#a6b59f}nav .nav-label{font-size:10px;letter-spacing:2px;margin:25px 12px 10px;color:#849781}nav .nav-item{display:flex;align-items:center;gap:12px;padding:11px 12px;margin:3px 0;font-size:13px;border-radius:3px;transition:background .15s}.nav-item .nav-number{font-family:Georgia,serif;font-size:11px;color:#8b9c85;width:17px}.nav-item:hover{background:#2a3b34}.nav-item.active{background:#3a4a3d;color:#fff9df}.nav-item.active .nav-number{color:#d8c187}.side-bottom{padding-top:28px;margin-top:auto;font-size:10px;line-height:2;color:#9aa590}.side-bottom small{font-family:system-ui;letter-spacing:1px;font-size:8px}.live-dot{display:inline-block;width:5px;height:5px;background:#a29b6f;border-radius:50%;margin-right:6px}.workspace{margin-left:258px}.topbar{height:73px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding:0 46px;position:sticky;top:0;background:#f6f4eef5;backdrop-filter:blur(14px);z-index:20}.breadcrumb{font-size:12px;color:#6e7d71;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:75%}.breadcrumb a:hover{color:var(--red)}.breadcrumb span{margin:0 9px;color:#b0b7a8}.header-tools{display:flex;align-items:center;gap:17px}.icon-button{font-size:24px;line-height:1;width:32px;height:32px}.edition-label{font-size:10px;color:#7b856f;border:1px solid #ced3c1;border-radius:3px;padding:5px 8px;white-space:nowrap}main{min-height:75vh;outline:none}.home,.chapter-view{max-width:1270px;margin:auto;padding:50px 46px}.eyebrow{font-family:system-ui;font-size:9px;letter-spacing:2.4px;color:var(--red);font-weight:600;text-transform:uppercase}.hero{display:grid;grid-template-columns:1.45fr 1fr;border-bottom:1px solid var(--line);padding-bottom:45px;gap:40px;min-height:350px}.hero h1{font-size:clamp(34px,3.6vw,53px);font-weight:600;letter-spacing:4px;line-height:1.45;margin:20px 0 9px}.hero .subtitle{font-size:19px;font-family:"Songti SC",serif;letter-spacing:4px;color:#69735e}.hero .intro{font-size:13px;line-height:2.1;color:#7b8176;max-width:420px;margin:24px 0}.primary{display:inline-flex;align-items:center;gap:25px;background:var(--green);color:#f9f8ec;font-size:12px;padding:13px 20px;border-radius:2px}.primary:hover{background:#354b40}.hero-art{display:grid;place-items:center;position:relative;overflow:hidden;min-height:280px;border:1px solid #dddfd0;background:radial-gradient(ellipse at center,#e8e7d9,#efeee6 70%);border-radius:50% 50% 2px 2px}.hero-art:before{position:absolute;content:"";inset:15px;border:1px solid #d3d5c4;border-radius:50% 50% 0 0}.hero-art:after{position:absolute;content:"F A E R Û N";bottom:18px;font-family:Georgia,serif;letter-spacing:5px;font-size:10px;color:#8c957d}.emblems{display:flex;gap:31px;align-items:center;z-index:1}.emblems img{object-fit:contain;width:80px;height:106px;filter:drop-shadow(1px 9px 12px #88866c32)}.art-year{font-family:Georgia,serif;color:#a6ae95;font-size:12px;letter-spacing:3px;position:absolute;top:47px}.statline{display:flex;align-items:center;gap:26px;margin-top:27px;font-size:11px;color:#7b8375}.statline b{font-family:Georgia,serif;font-size:17px;font-weight:400;color:#515f4b;margin-right:5px}.statline span+span{border-left:1px solid var(--line);padding-left:26px}.section-heading{display:flex;justify-content:space-between;align-items:baseline;gap:16px;margin:35px 0 19px}.section-heading h2{font-size:23px;font-weight:500;letter-spacing:2px}.section-heading a{font-size:11px;color:var(--red)}.section-heading small{font-size:10px;letter-spacing:1.5px;color:#96a087;font-family:Georgia,serif}.portal-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.portal{background:var(--white);padding:23px 23px 20px;border:1px solid var(--line);border-radius:3px;position:relative;transition:transform .15s,border-color .15s}.portal:hover{border-color:#b6bda3;transform:translateY(-3px)}.portal-top{display:flex;justify-content:space-between;color:#adb698;font-family:Georgia,serif;font-size:12px}.portal h3{font-size:19px;font-weight:500;letter-spacing:1px;margin:15px 0 9px}.portal p{font-size:11px;line-height:1.9;color:#828a7b}.portal-bottom{display:flex;justify-content:space-between;font-size:10px;color:#9d483a;margin-top:22px}.portal-bottom span:last-child{font-size:17px;line-height:10px}.characters{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.character{border:1px solid var(--line);background:#eeede3;position:relative;overflow:hidden;border-radius:3px;min-height:230px}.character img{position:absolute;width:100%;height:195px;object-fit:contain;object-position:center top;top:15px;transition:transform .3s;filter:drop-shadow(0 4px 5px #3332)}.character:hover img{transform:scale(1.04)}.character .card-caption{position:absolute;inset:auto 0 0;background:linear-gradient(transparent,#f3f2e7 30%);padding:44px 18px 17px}.card-caption h3{font-size:16px;font-weight:500}.card-caption p{font-size:10px;color:#8b927e;margin-top:7px}.quick-row{display:flex;flex-wrap:wrap;gap:8px}.quick-link{border:1px solid #dedfce;background:#f9f8f1;font-size:11px;padding:8px 13px;border-radius:3px}.quick-link:hover{border-color:var(--gold);color:var(--red)}.history-teaser{margin-top:32px;display:flex;align-items:center;gap:30px;background:#e9ecdf;border-left:2px solid #a5af88;padding:24px 28px}.history-teaser .date{font-family:Georgia;font-size:31px;white-space:nowrap;color:#6b7a58}.history-teaser .date small{font-size:13px}.history-teaser p{font-size:12px;color:#768068;line-height:1.8}.history-teaser a{margin-left:auto;white-space:nowrap;color:#51663f;font-size:12px}.footer{margin:30px 46px 0;border-top:1px solid var(--line);padding:25px 0 29px;font-size:10px;color:#88917e;line-height:2}.footer span{margin:0 7px}.footer small{font-size:8px;letter-spacing:1.2px}.chapter-view h1{font-size:33px;letter-spacing:3px;margin:17px 0 12px;font-weight:500}.chapter-intro{font-size:13px;line-height:2;color:#7f8874;max-width:690px;margin-bottom:30px}.entry-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.entry-card{background:var(--white);border:1px solid var(--line);padding:20px 23px;border-radius:3px;transition:border-color .15s}.entry-card:hover{border-color:#a9b18e}.entry-card h2{font-size:18px;font-weight:500;line-height:1.6;margin-bottom:8px}.entry-card p{font-size:11px;color:#8b927f;line-height:1.9}.entry-card .entry-number{font:11px Georgia;color:#a4ad91;margin-bottom:9px}.article-layout{max-width:1270px;margin:auto;display:grid;grid-template-columns:minmax(0,1fr) 180px;gap:35px;padding:42px 46px}.article-main{min-width:0}.article-header{border-bottom:1px solid var(--line);padding-bottom:24px;margin-bottom:27px}.article-header h1{font-size:32px;line-height:1.55;font-weight:600;letter-spacing:1px;margin:15px 0}.article-meta{display:flex;flex-wrap:wrap;gap:13px;font-size:10px;color:#88917a;align-items:center}.article-actions{display:flex;align-items:center;gap:9px;margin-left:auto}.article-actions button{font-size:11px;padding:5px 8px;border:1px solid var(--line);border-radius:2px}.article-actions button:hover{border-color:#a2af8f}.article-body{font-size:var(--body-size);line-height:2;color:#3d493f;overflow-wrap:anywhere}.article-body .para{margin:0 0 14px}.article-body .note{font-size:.82em;color:#7c8671;line-height:1.9}.article-body .bullet{padding-left:17px;position:relative}.article-body .bullet:before{content:"·";position:absolute;left:1px;font-weight:700}.article-body a{color:#8b4839;border-bottom:1px solid #d6b8a4}.article-body a:hover{color:#b05036;border-color:#b05036}.article-body h3{font-size:1.35em;letter-spacing:1px;margin:32px 0 16px;font-weight:600;color:#2d3f30}.article-body h4{font-size:1.1em;margin:25px 0 12px;color:#3a4b33}.article-body figure{text-align:center;background:#eeeee5;border:1px solid var(--line);margin:24px 0 27px;padding:22px 15px;border-radius:3px}.article-body figure img{max-height:380px;max-width:100%;object-fit:contain}.table-wrap{width:100%;overflow-x:auto;margin:20px 0 25px;border:1px solid #d9dfcf;border-radius:3px}table{border-collapse:collapse;width:100%;font-size:.83em;line-height:1.85;min-width:380px}th{background:#e7ebdf;text-align:left;font-weight:600;color:#44533a}td,th{padding:11px 13px;border:1px solid #d9dfcf;vertical-align:top}tr:nth-child(odd) td{background:#f0f2e9}tr:nth-child(even) td{background:#fffef8}td>div+div{margin-top:7px}.article-toc{position:sticky;top:107px;align-self:start;max-height:calc(100vh - 135px);overflow-y:auto;border-left:1px solid var(--line);padding-left:17px}.toc-heading{font-size:10px;letter-spacing:2px;color:#879075;margin:4px 0 17px}.article-toc a{display:block;line-height:1.8;font-size:11px;color:#7e8872;margin-bottom:11px}.article-toc a:hover{color:var(--red)}.article-toc a.deep{padding-left:8px;font-size:10px}.page-nav{display:flex;justify-content:space-between;gap:16px;border-top:1px solid var(--line);margin-top:32px;padding-top:22px}.page-nav a{font-size:11px;color:#67745d;max-width:48%;line-height:1.9}.page-nav a:last-child{text-align:right;margin-left:auto}.loading{padding:70px;font-size:15px;color:#829170}dialog{border:1px solid #cbd2be;border-radius:8px;background:#f9f8f2;width:min(700px,calc(100vw - 30px));padding:0;box-shadow:0 25px 90px #0003;max-height:80vh;color:var(--ink)}dialog::backdrop{background:#15251bb3;backdrop-filter:blur(4px)}.search-input-row{display:flex;align-items:center;gap:14px;padding:18px 21px;border-bottom:1px solid var(--line)}.search-input-row>span{font-size:28px;color:#768265}.search-input-row input{background:none;border:0;outline:none;width:100%;min-width:0;font-size:15px}.search-input-row button{font-size:10px;border:1px solid #d4dac8;border-radius:4px;padding:4px;color:#899174}.search-filters{display:flex;gap:7px;padding:15px 19px 3px;flex-wrap:wrap}.search-filters button{font-size:11px;border:1px solid #dee2d4;padding:5px 10px;border-radius:20px;color:#7d8870}.search-filters button.selected{background:var(--green);color:#fbf9eb;border-color:var(--green)}.search-meta{font-size:11px;color:#899174;padding:14px 21px}.search-results{overflow:auto;max-height:52vh;padding:0 12px 12px}.result{display:block;border-top:1px solid var(--line);padding:15px 10px}.result:hover{background:#edeee3}.result .result-chapter{font-size:10px;color:#949d85;margin-bottom:6px}.result h3{font-size:16px;font-weight:500;line-height:1.5;margin-bottom:6px}.result p{font-size:12px;color:#79856c;line-height:1.8}.result mark{background:#e8d49f;color:#513c1b;padding:0 1px;border-radius:1px}.empty{font-size:13px;color:#899174;text-align:center;padding:32px}.mobile-only{display:none}.shade{display:none}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.skip{position:fixed;left:280px;top:-50px;z-index:100;background:var(--green);color:#fff;padding:10px}.skip:focus{top:10px}#toast{position:fixed;bottom:28px;left:calc(50% + 129px);transform:translateX(-50%) translateY(20px);background:#25392e;color:#fbf8e9;padding:11px 20px;border-radius:4px;font-size:12px;opacity:0;pointer-events:none;transition:.2s;z-index:100}#toast.show{opacity:1;transform:translateX(-50%) translateY(0)}
@media(min-width:1500px){.home,.chapter-view{padding-top:62px}.hero{min-height:370px}.hero-art{max-height:310px;min-height:290px}}
@media(max-width:1160px){.sidebar{width:230px;padding-left:18px;padding-right:18px}.workspace{margin-left:230px}.topbar{padding:0 30px}.home,.chapter-view,.article-layout{padding-left:30px;padding-right:30px}.hero{gap:25px;grid-template-columns:1.5fr 1fr}.hero h1{font-size:38px}.article-layout{grid-template-columns:minmax(0,1fr)}.article-toc{display:none}.portal{padding:19px}.emblems{gap:13px}.emblems img{width:64px}.characters{grid-template-columns:repeat(4,1fr)}.character{min-height:210px}.character img{height:175px}.statline{gap:14px}.statline span+span{padding-left:14px}.footer{margin-left:30px;margin-right:30px}}
@media(max-width:850px){.sidebar{width:258px;transform:translateX(-100%);transition:transform .2s}.sidebar.open{transform:translateX(0)}.workspace{margin-left:0}.mobile-only{display:block}.topbar{height:62px;padding:0 20px;gap:14px}.breadcrumb{flex:1;max-width:70%}.header-tools{gap:9px}.shade.open{display:block;position:fixed;inset:0;background:#0a1918aa;z-index:30}.home,.chapter-view{padding:32px 24px}.article-layout{padding:30px 24px}.portal-grid{grid-template-columns:repeat(3,1fr)}.hero h1{font-size:37px}.hero .subtitle{font-size:17px}.hero-art{min-height:240px}.hero{min-height:310px}.emblems img{width:62px;height:90px}.hero .intro{margin:20px 0}.brand{font-size:19px}.footer{margin:20px 24px 0}#toast{left:50%}}
@media(max-width:590px){.hero{grid-template-columns:1fr;padding-bottom:26px;gap:20px}.hero-art{display:none}.hero h1{font-size:37px;letter-spacing:3px;margin-top:17px}.hero .intro{max-width:100%;margin:20px 0}.statline{margin-top:23px;font-size:10px}.statline b{font-size:16px}.statline span+span{padding-left:12px}.portal-grid{grid-template-columns:repeat(2,1fr);gap:10px}.portal{padding:18px 15px}.portal h3{font-size:18px}.portal p{font-size:10px}.portal-bottom{margin-top:18px}.section-heading{margin-top:29px}.section-heading h2{font-size:21px}.section-heading small{display:none}.characters{grid-template-columns:repeat(2,1fr);gap:10px}.character{min-height:230px}.character img{height:200px}.history-teaser{padding:20px;gap:15px;flex-wrap:wrap}.history-teaser .date{font-size:25px}.history-teaser p{font-size:11px;flex:1}.history-teaser a{margin-left:0}.entry-grid{grid-template-columns:1fr}.article-header h1{font-size:27px}.article-body{font-size:calc(var(--body-size) - 1px)}.article-actions{margin-left:0}.edition-label{font-size:9px;padding:4px}.eyebrow{font-size:8px;letter-spacing:1.4px}.article-layout{padding-left:20px;padding-right:20px}.page-nav a{font-size:10px}.chapter-view h1{font-size:29px}.footer{font-size:9px}.search-input-row input{font-size:13px}.search-input-row{padding:15px}.search-meta{font-size:10px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

.mobile-toc{display:none;border:1px solid var(--line);background:#eeefe4;padding:12px 15px;margin-bottom:22px;border-radius:3px;font-size:12px;color:#718163}
.mobile-toc summary{cursor:pointer}.mobile-toc a{display:block;line-height:1.8;margin-top:11px;color:#596c4c;font-size:11px}
@media(max-width:1160px){.mobile-toc{display:block}.mobile-toc:has(summary:only-child){display:none}}

/* Tabletop companion tools */
.toolkit {
 max-width: 1270px;
 margin: auto;
 padding: 43px 46px;
}
.toolkit h1 { font-size: 34px; font-weight: 500; letter-spacing: 3px; margin: 15px 0 10px; }
.kit-intro { font-size: 13px; color: #7c8870; line-height: 1.9; }
.kit-tabs { display: flex; border-bottom: 1px solid var(--line); margin: 29px 0 25px; gap: 25px; }
.kit-tabs a { padding: 13px 0; color: #808b75; font-size: 13px; border-bottom: 2px solid transparent; }
.kit-tabs a.selected { color: var(--ink); border-color: var(--red); }
.kit-tabs small { font: 11px Georgia, serif; margin-right: 9px; color: #9aa685; }
.kit-grid { display: grid; grid-template-columns: 1fr 1.08fr; gap: 20px; align-items: start; }
.kit-panel { padding: 25px; background: var(--white); border: 1px solid var(--line); border-radius: 4px; min-width: 0; }
.kit-panel-title { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 13px; }
.kit-panel-title h2 { font-size: 21px; font-weight: 500; letter-spacing: 1px; }
.kit-panel-title > span { font: 9px system-ui; color: #8b967c; letter-spacing: 1px; text-align: right; }
.kit-help { color: #7b8771; font-size: 12px; line-height: 1.9; margin-bottom: 20px; }
.kit-field { display: block; min-width: 0; margin-bottom: 17px; }
.kit-field > span { display: block; font-size: 11px; color: #65765a; margin-bottom: 8px; }
.kit-field input, .kit-field select, .kit-field textarea, .board-add select {
 width: 100%;
 padding: 10px 12px;
 border: 1px solid #d8decc;
 border-radius: 3px;
 background: #fcfcf6;
 color: var(--ink);
 font-size: 14px;
 min-width: 0;
}
.kit-field textarea { resize: vertical; line-height: 1.7; font-family: inherit; }
.kit-field input:focus, .kit-field select:focus, .kit-field textarea:focus { outline: 2px solid #a2af8c; outline-offset: 1px; }
.kit-input-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 0 15px; }
.kit-divider { font-size: 10px; color: #929d83; border-top: 1px solid var(--line); padding-top: 18px; margin: 3px 0 15px; letter-spacing: 1px; }
.kit-check { display: flex; align-items: center; gap: 7px; font-size: 11px; line-height: 1.8; color: #627357; margin-bottom: 14px; }
.kit-check input { accent-color: #465d3c; width: 15px; height: 15px; flex-shrink: 0; }
.kit-check input:disabled + span { color: #a7b09e; }
.kit-check-row { display: flex; gap: 20px; }
.kit-small { font-size: 10px; color: #929c88; line-height: 1.9; margin: 17px 0; }
.kit-submit { width: 100%; justify-content: space-between; margin-top: 4px; font-size: 12px; }
.kit-source { display: inline-block; color: #985443; font-size: 11px; margin-top: 17px; }
.kit-source:hover { text-decoration: underline; }
.kit-empty { text-align: center; padding: 75px 8px; }
.kit-empty > span { display: block; font: 45px Georgia, serif; color: #b6c09f; margin-bottom: 15px; }
.kit-empty h3 { font-size: 18px; font-weight: 500; margin-bottom: 12px; }
.kit-empty p { color: #8a957e; font-size: 12px; line-height: 2; }
.kit-result { min-height: 350px; }
.kit-metrics { display: flex; gap: 20px; padding: 24px 0; border-block: 1px solid var(--line); margin: 24px 0; }
.kit-metrics > div { flex: 1; min-width: 0; }
.kit-metrics b { font: 33px Georgia, serif; display: block; color: #536b43; }
.kit-metrics span { display: block; font-size: 10px; color: #8c987b; margin-top: 7px; line-height: 1.8; }
.kit-notes { font-size: 11px; color: #78896b; line-height: 1.9; }
.kit-notes p { margin: 11px 0; }
.kit-result .table-wrap { max-height: 380px; overflow: auto; }
.kit-result table { min-width: 260px; font-size: 11px; }
.kit-result th { position: sticky; top: 0; }
.kit-button { border: 1px solid #cad3bc; border-radius: 3px; background: #f7f8ef; color: #637654; font-size: 11px; padding: 10px 13px; }
.kit-button:hover { background: #edf1e2; }
.kit-error { font-size: 12px; color: #a13d34; line-height: 1.9; padding: 12px 0; }
.kit-confusion { color: #99513b; font-size: 12px; line-height: 1.9; }
.board-toolbar, .board-add { display: flex; align-items: center; gap: 11px; flex-wrap: wrap; }
.board-toolbar { padding: 17px 0; border-block: 1px solid var(--line); margin: 23px 0 19px; }
.board-toolbar .primary { padding: 12px 15px; }
.board-round { display: flex; gap: 8px; align-items: center; margin-right: 9px; }
.board-round small { font-size: 10px; color: #859576; margin-right: 9px; }
.board-round button { color: #859971; width: 23px; height: 27px; border: 1px solid var(--line); border-radius: 3px; }
.board-round b { font: 26px Georgia, serif; width: 29px; text-align: center; }
.board-add { margin-bottom: 23px; }
.board-add select { width: auto; max-width: 210px; font-size: 11px; padding: 10px; }
.board-backups { display: flex; gap: 12px; align-items: center; margin-left: auto; }
.board-backups button { font-size: 11px; color: #899778; padding: 7px 0; }
.board-backups button:hover { color: var(--red); }
.unit-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 15px; }
.unit-card { border: 1px solid var(--line); background: #f8f9f1; border-radius: 4px; padding: 19px; min-width: 0; }
.unit-card.is-active { border-color: #a0af85; box-shadow: inset 3px 0 0 #a0af85; }
.unit-top { display: flex; gap: 11px; align-items: center; }
.unit-order { font: 14px Georgia, serif; color: #a4b08f; }
.unit-top h3 { font-size: 17px; font-weight: 500; overflow-wrap: anywhere; }
.unit-top p { font-size: 10px; color: #8a967c; margin-top: 5px; line-height: 1.7; }
.unit-initiative { margin-left: auto; white-space: nowrap; font-size: 9px; color: #859576; }
.unit-initiative b { display: block; font: 22px Georgia, serif; color: #5c724a; text-align: right; margin-top: 5px; }
.unit-stats { display: flex; align-items: center; gap: 30px; margin: 22px 0 11px; }
.unit-stats span { display: block; font-size: 9px; color: #8f9a80; margin-bottom: 6px; }
.unit-stats strong { font: 23px Georgia, serif; color: #5b704b; }
.unit-stats small { font-size: 13px; color: #9aa78b; }
.unit-stats .unit-active { margin-left: auto; font-size: 10px; color: #627b4a; background: #e6ecd9; padding: 5px 8px; border-radius: 3px; }
.unit-health { height: 4px; background: #e1e7d4; border-radius: 3px; overflow: hidden; margin-bottom: 18px; }
.unit-health i { display: block; height: 100%; background: #a7b58d; transition: width .2s; }
.unit-note { font-size: 11px; color: #7a896c; line-height: 1.85; white-space: pre-wrap; overflow-wrap: anywhere; margin-top: 10px; }
.unit-note b { font-weight: 500; margin-right: 10px; color: #526a43; }
.unit-actions { display: flex; align-items: center; gap: 13px; flex-wrap: wrap; border-top: 1px solid #e0e5d6; margin-top: 17px; padding-top: 12px; }
.unit-actions button, .unit-actions a { font-size: 10px; color: #7c8c6b; padding: 0; margin: 0; }
.unit-actions button:hover { color: #a34737; }
.unit-actions .unit-delete { margin-left: auto; color: #b19785; }
.board-empty { padding: 45px 0; }
.board-empty .kit-button { margin-top: 20px; }
.unit-editor { max-width: 580px; }
.unit-editor form { padding: 25px; }
.unit-editor .kit-field { margin-bottom: 13px; }
.unit-editor .kit-panel-title button { font-size: 18px; color: #92a07f; }
.unit-editor::backdrop { background: #1c2a25a8; }
.dice-presets { display: flex; gap: 7px; flex-wrap: wrap; margin: -3px 0 22px; }
.dice-presets button { border: 1px solid #dfe4d3; border-radius: 3px; background: #f4f6eb; color: #7b8f65; font-size: 11px; padding: 6px 9px; font-family: monospace; }
.dice-latest { text-align: center; margin-top: 24px; padding: 27px 12px; background: #f0f3e6; border: 1px solid #dce5ce; border-radius: 4px; }
.dice-latest > span { font: 13px monospace; color: #8e9e7e; }
.dice-latest > b { font: 60px Georgia, serif; display: block; color: #50683c; margin: 9px 0; }
.dice-latest p { font-size: 12px; color: #859574; line-height: 1.9; }
.dice-latest small { display: inline-block; padding: 4px 9px; border: 1px solid #bfcca9; margin-top: 12px; color: #71825d; font-size: 10px; border-radius: 3px; }
.dice-log { display: flex; align-items: center; gap: 15px; border-top: 1px solid var(--line); padding: 17px 0; }
.dice-log > div { flex: 1; min-width: 0; overflow-wrap: anywhere; }
.dice-log span { font: 13px monospace; color: #6c7e58; }
.dice-log small { display: block; color: #9aa78b; font-size: 10px; line-height: 1.8; margin-top: 8px; }
.dice-log b { font: 27px Georgia, serif; color: #708a55; }
.toolbox-promo { display: flex; justify-content: space-between; gap: 22px; margin-top: 34px; background: #e7ebdd; border: 1px solid #d7deca; border-radius: 4px; padding: 24px; align-items: center; }
.toolbox-promo small { color: #8d9e77; font: 9px system-ui; letter-spacing: 1.7px; }
.toolbox-promo h2 { font-size: 23px; font-weight: 500; letter-spacing: 2px; margin: 9px 0; }
.toolbox-promo p { font-size: 11px; color: #859775; line-height: 1.8; }
.toolbox-promo > div:last-child { display: flex; flex-direction: column; gap: 12px; flex-shrink: 0; }
.toolbox-promo a { font-size: 12px; color: #687d4e; }
@media (max-width: 1160px) {
 .toolkit { padding-inline: 30px; }
 .kit-grid { grid-template-columns: 1fr; }
 .unit-grid { grid-template-columns: 1fr; }
 .kit-empty { padding-block: 35px; }
}
@media (max-width: 590px) {
 .toolkit { padding: 30px 20px; }
 .toolkit h1 { font-size: 29px; }
 .kit-panel { padding: 20px 16px; }
 .kit-tabs { gap: 22px; }
 .kit-tabs a { font-size: 12px; }
 .kit-tabs small { margin-right: 6px; }
 .kit-panel-title h2 { font-size: 19px; }
 .kit-metrics { gap: 10px; }
 .kit-metrics b { font-size: 28px; }
 .kit-metrics span { font-size: 9px; }
 .board-backups { margin-left: 0; width: 100%; justify-content: flex-end; }
 .board-add select { flex: 1; }
 .unit-editor form { padding: 20px; }
 .toolbox-promo { flex-direction: column; align-items: stretch; padding: 20px; }
 .toolbox-promo > div:last-child { flex-direction: row; gap: 16px; }
 .toolbox-promo a { font-size: 11px; }
 .unit-top h3 { font-size: 16px; }
}

/* Dungeon Master's screen, resource counters and reminders. */
.kit-tabs { flex-wrap: wrap; }
.dm-phase { display: flex; gap: 1px; margin-left: auto; border: 1px solid #d4ddc5; padding: 3px; border-radius: 4px; }
.dm-phase button { font-size: 11px; color: #879975; border-radius: 2px; padding: 8px 10px; }
.dm-phase button[aria-pressed="true"] { background: #dde7cd; color: #4e6839; }
.dm-reminders { border: 1px solid #dce2cc; background: #f2f5e9; border-radius: 4px; padding: 17px 20px; margin-bottom: 22px; }
.dm-reminders-title { display: flex; justify-content: space-between; align-items: center; gap: 15px; }
.dm-reminders-title h3 { font-size: 17px; font-weight: 500; letter-spacing: 1px; }
.dm-reminders-title > span { font-size: 10px; color: #859570; }
.dm-reminders > p { font-size: 11px; color: #8c987c; margin: 13px 0; line-height: 1.9; }
.dm-reminders > small { display: block; color: #9ba58d; font-size: 10px; line-height: 1.9; margin-top: 13px; }
.dm-task { display: flex; text-align: left; align-items: flex-start; gap: 11px; width: 100%; padding: 13px 0; border-bottom: 1px solid #e0e7d3; font-size: 12px; color: #6b7e57; line-height: 1.9; }
.dm-task.done { color: #a1ad91; }
.dm-task.done > span:last-child { text-decoration: line-through; }
.dm-task b { display: block; font-size: 10px; font-weight: 500; color: #98a584; margin-bottom: 4px; }
.dm-checkbox { width: 16px; height: 16px; margin-top: 4px; border: 1px solid #acbc96; border-radius: 2px; flex-shrink: 0; display: grid; place-items: center; font-size: 10px; line-height: 1; }
.dm-personal-turn { font-size: 10px; color: #9aa888; margin: 12px 0 4px; }
.dm-personal-turn b { font: 13px Georgia, serif; color: #6f8558; margin-left: 8px; }
.dm-unit-section { border-top: 1px solid #dfe5d5; padding-top: 14px; margin-top: 17px; }
.dm-section-head { display: flex; justify-content: space-between; align-items: center; gap: 14px; margin-bottom: 10px; }
.dm-section-head b { font-size: 11px; font-weight: 500; color: #7c8f66; }
.dm-section-head button { font-size: 10px; color: #839c66; }
.dm-unit-help { font-size: 10px; color: #a0ad91; line-height: 1.9; }
.dm-resource { display: flex; align-items: center; gap: 7px; padding: 8px 0; }
.dm-resource > span { flex: 1; min-width: 0; font-size: 11px; color: #7f916c; overflow-wrap: anywhere; }
.dm-resource > b { font: 18px Georgia, serif; color: #5c7646; min-width: 38px; text-align: center; }
.dm-resource > b small { color: #a1af90; font-size: 11px; }
.dm-resource > button { border: 1px solid #d8e0ca; border-radius: 3px; padding: 2px 6px; font-size: 13px; color: #8a9f72; }
.dm-resource .dm-subtle { border: 0; font-size: 9px; padding: 2px 0 2px 3px; white-space: nowrap; }
.dm-reminder-row { display: flex; align-items: flex-start; gap: 12px; padding: 7px 0; }
.dm-reminder-row > div { flex: 1; min-width: 0; }
.dm-reminder-row small { font-size: 9px; color: #9dab8c; display: block; margin-bottom: 5px; line-height: 1.7; }
.dm-reminder-row span { font-size: 11px; color: #788e60; line-height: 1.9; display: block; overflow-wrap: anywhere; }
.dm-reminder-row > button { font-size: 9px; color: #98a686; padding-top: 3px; }
.dm-editor-actions { display: flex; align-items: center; justify-content: space-between; gap: 15px; }
.dm-timing-inputs .kit-small, .dm-hp-inputs .kit-small { margin: -4px 0 18px; }
.dm-screen-intro { margin-bottom: 20px; }
.dm-pin-picker { display: grid; grid-template-columns: 1fr 1.1fr 1.2fr auto; align-items: end; gap: 13px; }
.dm-pin-picker .kit-field { margin: 0; }
.dm-pin-picker .primary { padding: 12px 15px; white-space: nowrap; justify-content: center; }
.dm-screen-backup { display: flex; align-items: center; flex-wrap: wrap; gap: 16px; margin-top: 19px; padding-top: 16px; border-top: 1px solid var(--line); color: #a0ad8e; font-size: 10px; }
.dm-screen-backup > span { margin-right: auto; }
.dm-screen-backup > button { color: #849c68; font-size: 10px; }
.dm-screen-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: start; gap: 18px; }
.dm-card-kicker { display: flex; align-items: center; justify-content: space-between; gap: 12px; color: #9dab8d; font-size: 9px; }
.dm-card-kicker > div { display: flex; gap: 9px; }
.dm-card-kicker button { color: #a2b08f; font-size: 16px; padding: 0 4px; }
.dm-screen-card h3 { font-size: 20px; line-height: 1.7; margin: 12px 0; font-weight: 500; letter-spacing: 1px; }
.dm-rule-excerpt { font-size: 12px; color: #7c8d6a; line-height: 2; overflow-wrap: anywhere; }
.dm-rule-full { margin-top: 18px; border-top: 1px solid var(--line); padding-top: 12px; }
.dm-rule-full summary { font-size: 10px; cursor: pointer; color: #99a987; }
.dm-rule-full .article-body { font-size: 13px; padding-top: 14px; max-height: 480px; overflow: auto; padding-right: 5px; }
.dm-rule-full .article-body > h3:first-child, .dm-rule-full .article-body > h4:first-child { margin-top: 0; }
.dm-rule-full .article-body table { min-width: 330px; }
.dm-scratch { margin-top: 20px; }
.dm-scratch .kit-field { margin-bottom: 0; }
.dm-scratch small { display: block; font-size: 10px; color: #98a68a; margin-top: 12px; }
@media (max-width: 1160px) {
 .dm-pin-picker { grid-template-columns: repeat(2, minmax(0, 1fr)); }
 .dm-pin-picker .primary { align-self: end; }
}
@media (max-width: 700px) {
 .dm-screen-grid { grid-template-columns: 1fr; }
 .dm-phase { margin-left: 0; }
 .dm-resource { flex-wrap: wrap; }
 .dm-resource > span { min-width: 80px; }
}
@media (max-width: 590px) {
 .dm-pin-picker { grid-template-columns: 1fr; }
 .dm-pin-picker .primary { width: 100%; }
 .dm-screen-backup { gap: 12px; }
 .dm-screen-backup > span { width: 100%; }
 .dm-reminders { padding: 15px; }
 .dm-screen-card h3 { font-size: 18px; }
 .toolbox-promo > div:last-child { flex-wrap: wrap; }
}
/* Character workshop */
.card-builder{max-width:1200px}.card-toolbar{display:flex;gap:10px;align-items:flex-end;flex-wrap:wrap;margin:16px 0}.card-toolbar>.kit-field{min-width:180px;flex:1}.card-summary{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin:22px 0}.card-summary>div{padding:14px 10px;background:var(--paper,#f5f3ed);border:1px solid #dce1d5;text-align:center}.card-summary b{display:block;font-size:27px;font-family:Georgia,serif;color:#203b32}.card-summary span{font-size:11px;color:#6b7467}.card-warning{grid-column:1/-1;background:#faf1df;padding:12px;border-left:3px solid #aa7637;font-size:13px}.card-sections{display:flex;gap:6px;flex-wrap:wrap;border-block:1px solid #dce1d5;padding:14px 0;margin-bottom:25px}.card-sections button[aria-current]{background:#223f34;color:white}.card-builder h3{margin:26px 0 12px}.card-builder textarea,.card-builder input,.card-builder select{width:100%;box-sizing:border-box;min-width:0}.card-builder input[type=checkbox]{width:auto}.card-builder textarea{border:1px solid #cbd2c4;background:#fff;padding:12px;font:inherit;resize:vertical;line-height:1.65}.card-class-row{display:grid;grid-template-columns:1fr 95px 1.5fr auto;gap:12px;align-items:end;margin-bottom:12px}.card-skills{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.card-item{padding:16px;border:1px solid #d6dcce;margin:15px 0;background:#fafbf7}.card-attached{display:flex;align-items:center;gap:10px;padding:12px 0;border-bottom:1px solid #ddd}.card-attached>div{flex:1}.card-attached small{display:block;color:#75806d}.card-library-controls{display:grid;grid-template-columns:1fr 2fr 1fr 1fr;gap:12px}.card-library-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;max-height:620px;overflow:auto}.card-library-list button{text-align:left;padding:15px;border:1px solid #d5ddcd;background:#fafbf7;cursor:pointer}.card-library-list button:hover{border-color:#4f715b}.card-library-list b,.card-library-list small,.card-library-list span{display:block}.card-library-list b{font-size:15px;color:#233e33}.card-library-list small{font-size:11px;color:#6d7768;margin:5px 0}.card-library-list span{font-size:11px;color:#88917f;overflow-wrap:anywhere}.card-source-preview{margin:20px 0;padding:18px;border:1px solid #9cad91;background:#fff}.card-reference-body{max-height:600px;overflow:auto;padding:12px;overflow-wrap:anywhere}.card-reference-body table{width:100%;border-collapse:collapse}.card-reference-body td,.card-reference-body th{border:1px solid #dce0d7;padding:7px}.card-reference-body img{max-width:100%}.card-save-status{font-size:12px;color:#748069;margin-top:25px}.character-sheet header{border-bottom:2px solid #254435;padding-bottom:15px}.character-sheet header h2{font-size:34px}.character-sheet{line-height:1.8}.card-pre{white-space:pre-wrap;overflow-wrap:anywhere}.card-sheet-rule{margin:14px 0;border:1px solid #ddd;padding:12px}.card-sheet-rule summary{cursor:pointer;font-weight:600}.character-sheet .entry-content{max-width:none}.card-builder .table-wrap input{min-width:70px;max-width:120px}.card-builder .kit-button{white-space:normal}.card-source-preview h1{font-size:27px}.card-source-preview h2{font-size:23px}.card-builder .kit-field{margin-bottom:8px}
@media(max-width:900px){.card-summary{grid-template-columns:repeat(3,1fr)}.card-class-row{grid-template-columns:1fr 80px}.card-library-controls{grid-template-columns:1fr 1fr}.card-skills{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.card-library-list,.card-library-controls,.card-skills{grid-template-columns:1fr}.card-summary b{font-size:22px}.card-attached{flex-wrap:wrap}.card-class-row{grid-template-columns:1fr}.card-toolbar>.kit-field{flex-basis:100%}.card-builder .kit-panel-title{flex-wrap:wrap}}
@media print{body.printing-character .sidebar,body.printing-character .topbar,body.printing-character footer,body.printing-character .kit-tabs,body.printing-character .card-toolbar,body.printing-character .card-sections,body.printing-character .card-save-status,body.printing-character .card-builder>.kit-panel-title,body.printing-character .card-builder>.kit-help,body.printing-character #cardMetrics,body.printing-character .toolkit>.eyebrow,body.printing-character .toolkit>h1,body.printing-character .toolkit>.kit-intro,body.printing-character #toast{display:none!important}body.printing-character main,body.printing-character .main-wrap,body.printing-character .page,body.printing-character .toolkit,body.printing-character .kit-panel{margin:0!important;padding:0!important;max-width:none!important;width:100%!important;border:0!important;box-shadow:none!important}body.printing-character{background:white;color:#111;font-size:10pt}body.printing-character .character-sheet .card-summary>div{padding:5px}body.printing-character .character-sheet table{font-size:9pt}body.printing-character .card-sheet-rule{break-inside:auto}body.printing-character .card-sheet-rule>div{display:block!important}body.printing-character details:not([open])>div{display:block!important}body.printing-character h2,body.printing-character h3{break-after:avoid}body.printing-character .character-sheet header{break-inside:avoid}body.printing-character img{max-height:240px}body.printing-character .table-wrap{overflow:visible}}

.npc-picker{display:grid;gap:8px;flex:1;min-width:240px;max-width:540px}.npc-picker label{display:grid;gap:5px;font-size:12px;color:#66715e}.npc-picker input,.npc-picker select{width:100%;box-sizing:border-box;min-width:0}.npc-picker input{padding:10px 12px;border:1px solid #cbd2c4;background:#fff;font:inherit}.npc-picker small{font-size:11px;color:#79846f}.board-add{align-items:flex-start}@media(max-width:600px){.npc-picker{min-width:0;flex-basis:100%;max-width:none}}
/* Workbook-inspired character workspace */
.card-builder{max-width:1600px}.sheet-mode{display:flex;flex-wrap:wrap;gap:10px 24px;align-items:center;padding:13px 16px;background:#eef2e8;border:1px solid #d7dfce;margin:16px 0;font-size:13px}.sheet-mode label{display:flex;align-items:center;gap:8px}.sheet-mode input{width:auto}.sheet-mode span{font-size:11px;color:#6e7865}.sheet-source-box{padding:15px 18px;margin:16px 0;background:#f6f5ee;border-left:3px solid #7b463b;font-size:13px;line-height:1.75}.sheet-source-box p{margin:5px 0}.sheet-choice{display:flex;flex-wrap:wrap;gap:10px 18px;border:1px solid #d5dccb;padding:16px;margin:18px 0}.sheet-choice legend{padding:0 8px;font-size:13px;font-weight:600}.sheet-choice label{display:flex;gap:6px;align-items:center;font-size:13px}.sheet-choice input{width:auto}.sheet-ability{min-width:930px}.sheet-ability td,.sheet-ability th{text-align:center}.sheet-ability td:nth-child(3){background:#f0f4e9;color:#3f6240}.sheet-ability td:nth-last-child(2){background:#f4efdb;font-weight:700}.card-builder .sheet-ability input{min-width:60px;max-width:90px}.sheet-dashboard>header{display:flex;justify-content:space-between;gap:15px;align-items:center;border-bottom:2px solid #723d34;padding:10px 0 20px}.sheet-dashboard>header small{letter-spacing:2px;font-size:10px;color:#8e4f44}.sheet-dashboard>header h2{font-size:30px;margin:8px 0}.sheet-dashboard>header p{font-size:13px;color:#6f756b}.sheet-dashboard-grid{display:grid;grid-template-columns:0.9fr 1.2fr 1fr;gap:22px}.sheet-dashboard-grid>section{min-width:0}.sheet-dashboard h3{background:#6d3933;color:#fff;padding:9px 12px;font-size:14px;font-family:inherit;font-weight:500;margin:20px 0 12px}.sheet-dashboard p{font-size:13px;line-height:1.75}.sheet-six{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.sheet-six>div{text-align:center;border:1px solid #d7d8ce;background:#fff;padding:12px 6px;display:grid;gap:5px}.sheet-six span{font-size:11px;color:#6f7468}.sheet-six b{font-family:Georgia,serif;font-size:27px}.sheet-six strong{font-size:17px;color:#784239}.sheet-six small{font-size:10px}.sheet-skills-summary>div,.sheet-combat-summary>div{display:flex;justify-content:space-between;gap:10px;padding:8px 12px;font-size:12px}.sheet-skills-summary>div:nth-child(odd),.sheet-combat-summary>div:nth-child(odd){background:#eef0e9}.sheet-combat-summary b{font-family:Georgia,serif;font-size:17px}.sheet-dashboard .card-sheet-rule{padding:10px;font-size:12px;background:#fafbf7;margin:8px 0}.sheet-picker-grid{display:grid;grid-template-columns:minmax(150px,1fr) auto;gap:10px 14px;align-items:end;margin:20px 0}.sheet-spell-limits{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px}.sheet-spell-limits>div{padding:14px;border:1px solid #d8dece;background:#f6f7f0;font-size:13px}.sheet-spell-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;max-height:680px;overflow:auto}.sheet-spell-list>div{padding:12px;border:1px solid #d6ddce;background:#fcfcf8}.sheet-spell-list b,.sheet-spell-list small{display:block;margin-bottom:7px}.sheet-spell-list b{font-size:14px}.sheet-spell-list small{font-size:11px;color:#79816e}.sheet-spell-list button{padding:6px 10px;margin-right:6px;font-size:12px}.sheet-spell-dialog{width:min(680px,90vw);max-height:85vh;overflow:auto;border:1px solid #b8c2ad;padding:26px;background:#fafbf6;color:#263a2d}.sheet-spell-dialog::backdrop{background:#15231ccc;backdrop-filter:blur(3px)}.sheet-spell-dialog .card-pre{font-size:15px;line-height:1.9}.sheet-spell-dialog .kit-panel-title button{font-size:22px}.sheet-credits{font-size:11px;color:#7b806f;line-height:1.7;margin-top:20px}.sheet-credits summary{cursor:pointer}.card-sections{position:relative}.card-builder .kit-field>label{font-size:12px;display:flex;align-items:center;gap:6px}.card-builder .kit-field>label input{width:auto}
@media(max-width:1150px){.sheet-dashboard-grid{grid-template-columns:1fr 1.25fr}.sheet-dashboard-grid>section:last-child{grid-column:1/-1}.sheet-dashboard-grid>section:last-child .card-sheet-rule{display:block}.sheet-six{grid-template-columns:repeat(3,1fr)}}
@media(max-width:650px){.sheet-dashboard-grid,.sheet-spell-list{grid-template-columns:1fr}.sheet-dashboard>header{align-items:flex-start;flex-direction:column}.sheet-picker-grid{grid-template-columns:1fr}.sheet-dashboard>header h2{font-size:25px}.sheet-six{grid-template-columns:repeat(3,1fr)}}
@media print{body.printing-character .sheet-credits{display:none!important}}

.equipment-library{margin-bottom:2rem}.equipment-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.equipment-results article{border:1px solid var(--line,#ddd);padding:16px;display:flex;flex-direction:column;justify-content:space-between;min-width:0}.equipment-results small{display:block;margin-top:8px;color:var(--muted,#777)}.equipment-results p{font-size:.88rem;line-height:1.6;overflow-wrap:anywhere}.equipment-inventory-rule{margin:10px 0}.equipment-inventory-rule details{border-top:1px solid #ddd;padding:12px 0}.equipment-basic-pickers{margin:24px 0}.equipment-dialog{max-width:1000px}.equipment-dialog .entry-content{overflow-x:auto}.equipment-dialog table{width:100%}.equipment-dialog .card-toolbar{position:sticky;top:0;background:var(--paper,#fff);padding:8px 0;z-index:1}@media(max-width:760px){.equipment-results{grid-template-columns:1fr}}
/* Shared reference library: book shelves, directory browsing and long-form reading. */
.rule-library{max-width:1180px;margin:0 auto;padding:48px clamp(20px,4vw,64px) 80px}.rule-library h1{font-family:var(--serif,Georgia,serif);font-size:clamp(32px,4vw,48px);font-weight:500;margin:12px 0 18px}.rule-library-header>p{max-width:680px;line-height:1.8;color:var(--muted,#777)}.rule-library-stats{display:flex;gap:30px;flex-wrap:wrap;margin:30px 0;color:#69766d;font-size:12px}.rule-library-stats b{font-size:23px;color:#294139;margin-right:5px}.rule-search-form{display:grid;grid-template-columns:minmax(220px,2fr) minmax(160px,1.3fr) 140px 140px auto;gap:12px;padding:24px 0;border-top:1px solid #d9dcd2;border-bottom:1px solid #d9dcd2;align-items:end}.rule-search-form .primary{white-space:nowrap;min-height:43px;padding:10px 20px;cursor:pointer}.rule-search-form input,.rule-search-form select,.rule-shelf-controls input,.rule-shelf-controls select,.rule-directory-filter input{width:100%;min-width:0;box-sizing:border-box}.rule-reading-links{display:flex;gap:22px;flex-wrap:wrap;padding:23px 0;font-size:13px}.rule-reading-links a{color:#456452}.rule-shelves{margin-top:38px}.rule-shelf-controls{display:grid;grid-template-columns:minmax(200px,1fr) 200px;gap:20px;margin:20px 0}.rule-book-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.rule-book{display:flex;border:1px solid #d6dbcf;background:#fdfdf9;min-height:175px;transition:background .15s,transform .15s;min-width:0}.rule-book:hover{background:#f1f2e9;transform:translateY(-2px)}.rule-book-spine{width:34px;flex-shrink:0;background:#30473d;color:#e3e8d4;display:flex;align-items:center;justify-content:center;font-family:var(--serif,Georgia,serif);font-size:20px;border-right:4px solid #b2b69b}.rule-book>div{padding:20px 17px;min-width:0}.rule-book small{font-size:10px;color:#7d8175}.rule-book h3{font-size:19px;line-height:1.45;margin:10px 0;overflow-wrap:anywhere}.rule-book p{font-size:11px;color:#7d8175;line-height:1.7}.rule-book>div>span{font-size:11px;color:#55705c}.rule-source-note{font-size:12px;color:#777e71;line-height:1.8;border-top:1px solid #d9dcd2;margin-top:36px;padding-top:20px}.rule-back{display:inline-block;margin-bottom:24px;font-size:12px;color:#56705b}.rule-directory-actions,.rule-reader-actions{display:flex;gap:9px;flex-wrap:wrap;margin:24px 0}.rule-directory-filter{max-width:580px;margin:28px 0}.rule-folder{border:1px solid #d8ddcf;background:#fffef9;margin:12px 0}.rule-folder summary{cursor:pointer;padding:16px 20px;font-weight:600}.rule-folder>div{padding:0 20px 14px}.rule-folder .rule-folder{border-left:3px solid #a9b39b}.rule-directory-page{display:flex;justify-content:space-between;gap:15px;padding:12px 0;border-bottom:1px solid #e8e9e1;font-size:14px}.rule-directory-page:hover{color:#884c3f}.rule-directory-page small{font-size:11px;flex-shrink:0;color:#818675}.rule-source-path{font-size:11px;line-height:1.7;color:#7c8276;overflow-wrap:anywhere}.rule-page-body{overflow-wrap:anywhere}.rule-page-body table{font-size:14px;line-height:1.65}.rule-page-body h1,.rule-page-body h2,.rule-page-body h3,.rule-page-body h4{scroll-margin-top:105px}.rule-reader-actions .kit-button{font-size:12px;padding:8px 11px}.rule-reader-toc a{overflow-wrap:anywhere}.rule-reader-toc .toc-heading{margin-top:20px}.rule-reader .mobile-toc a{display:block;padding:7px 0;font-size:13px}.rule-reader .article-main{min-width:0}.rule-search-progress{padding:24px 0;color:#657560;font-size:13px;min-height:50px}.rule-result-toolbar{display:flex;align-items:center;gap:15px;flex-wrap:wrap;padding:12px 0 20px;font-size:12px}.rule-result-list{display:grid;gap:12px}.rule-search-result{display:block;border:1px solid #d9ddcf;background:#fdfdf9;padding:20px 24px}.rule-search-result:hover{background:#f1f2e9}.rule-search-result small{font-size:10px;color:#6f7a69}.rule-search-result h3{font-size:21px;margin:10px 0;line-height:1.45}.rule-search-result p{font-size:13px;line-height:1.85;color:#6c7568;overflow-wrap:anywhere}.rule-search-result>span{font-size:11px;color:#6f7a69}.rule-modal-label{padding:18px 24px 8px;font-size:11px;color:#76846c;letter-spacing:.08em}.rule-modal-more{background:#eff2e8}.rule-home-promo{display:flex;align-items:center;justify-content:space-between;gap:24px;background:#e9eddf;border:1px solid #d1d8c3;padding:32px;margin:36px 0 56px}.rule-home-promo small{font-size:10px;letter-spacing:.14em;color:#6a7c60}.rule-home-promo h2{margin:12px 0}.rule-home-promo p{line-height:1.8;color:#6b7762;font-size:14px}.rule-home-promo .primary{white-space:nowrap;flex-shrink:0}
@media(max-width:1250px){.rule-search-form{grid-template-columns:repeat(2,minmax(0,1fr))}.rule-search-form .primary{grid-column:span 2}.rule-book-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.rule-library{padding:30px 20px 60px}.rule-book-grid{grid-template-columns:1fr}.rule-shelf-controls{grid-template-columns:1fr}.rule-search-form{grid-template-columns:1fr}.rule-search-form .primary{grid-column:auto}.rule-library-stats{gap:16px}.rule-directory-page{display:block}.rule-directory-page small{display:block;margin-top:6px}.rule-folder>div{padding:0 12px 10px}.rule-folder summary{padding:14px}.rule-home-promo{display:block;padding:24px}.rule-home-promo .primary{margin-top:16px}}
@media print{body.printing-reference .sidebar,body.printing-reference .topbar,body.printing-reference .footer,body.printing-reference .rule-reader-toc,body.printing-reference .rule-reader-actions,body.printing-reference .page-nav,body.printing-reference .mobile-toc{display:none!important}body.printing-reference .workspace{margin:0!important}body.printing-reference .article-layout{display:block!important}body.printing-reference .article-main{max-width:none!important;padding:0!important}body.printing-reference .article-body{font-size:11pt!important}body.printing-reference table{page-break-inside:auto}body.printing-reference tr{break-inside:avoid}}
