:root{--paper:#f4f0e7;--paper-light:#fbfaf6;--paper-dark:#e9e1d4;--ink:#302b25;--muted:#6f675d;--line:#b9ad9d;--line-soft:#d9d0c3;--link:#234f69;--link-hover:#7a3029;--accent:#6f3029;--accent-soft:#eee1d8;--danger:#8d3028;--ok:#3f6045;--warn:#805d25;--code-bg:#ebe4d8;--font-ui:system-ui, -apple-system, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Noto Sans CJK SC", sans-serif;--font-reading:Georgia, "Songti SC", "STSong", "SimSun", serif}*{box-sizing:border-box}html{background:var(--paper);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}html,body{min-height:100%;margin:0;padding:0}body{background:var(--paper);color:var(--ink);font-family:var(--font-ui);-webkit-font-smoothing:antialiased;font-size:15px;line-height:1.65}a{color:var(--link);text-underline-offset:2px;text-decoration:underline;text-decoration-thickness:1px}a:hover{color:var(--link-hover)}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:2px}input[type=checkbox]{appearance:none;border:1px solid var(--line);vertical-align:middle;background:#fff;border-radius:0;flex:none;width:20px;height:20px;margin:0}input[type=checkbox]:checked{background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M3.5 8.5 7 11.5 12.5 4.5' fill='none' stroke='%23996633' stroke-width='2'/%3E%3C/svg%3E") 50%/18px 18px no-repeat}code{background:var(--code-bg);padding:.08rem .3rem;font-family:ui-monospace,SFMono-Regular,Consolas,Courier New,monospace;font-size:.9em}.site-main{min-height:calc(100vh - 8rem)}.container{width:min(100% - 2.5rem,1120px);margin:0 auto}.site-header{border-bottom:3px double var(--line);background:var(--paper);margin-bottom:1.15rem}.header-inner{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:1.5rem;padding:.65rem 0 .5rem;display:flex}.masthead{align-items:baseline;gap:.7rem;min-width:0;display:flex}.brand{color:var(--ink);font-family:var(--font-reading);letter-spacing:.02em;white-space:nowrap;font-size:1.25rem;font-weight:700;text-decoration:none}.brand:hover{color:var(--link-hover)}.masthead-note{color:var(--muted);white-space:nowrap;font-size:.82rem}.nav{flex-wrap:wrap;align-items:baseline;gap:.9rem;font-size:.9rem;display:flex}.nav a{color:var(--ink);white-space:nowrap}.nav-count{color:var(--muted);font-size:.82em}.site-footer{border-top:1px solid var(--line);color:var(--muted);margin-top:3rem;padding:.8rem 0 1.5rem;font-size:.82rem}.site-footer-inner{text-align:right}h1,h2,h3{color:var(--ink);font-family:var(--font-reading);font-weight:700}h1{margin:0 0 .65rem;font-size:1.65rem;line-height:1.3}h2{border-bottom:1px solid var(--line);margin:1.65rem 0 .6rem;padding-bottom:.25rem;font-size:1.2rem;line-height:1.35}h3{margin:1.2rem 0 .45rem;font-size:1.05rem}.page-title{overflow-wrap:anywhere;margin-bottom:.25rem}.page-subtitle{color:var(--muted);margin:0 0 .75rem;font-size:.92rem}.page-kicker,.record-kicker,.meta-row{color:var(--muted);font-size:.84rem}.page-kicker,.record-kicker{margin:0 0 .2rem}.breadcrumb{color:var(--muted);margin:0 0 .35rem;font-size:.84rem}.breadcrumb ol{flex-wrap:wrap;align-items:baseline;gap:0;margin:0;padding:0;list-style:none;display:flex}.breadcrumb li{align-items:baseline;display:inline-flex}.breadcrumb a{color:var(--link);text-decoration:none}.breadcrumb a:hover{text-decoration:underline}.breadcrumb span[aria-current=page]{color:var(--ink);font-weight:600}.breadcrumb-sep{color:var(--muted);margin:0 .4rem}.muted{color:var(--muted)}.see-also{color:var(--muted);margin:0 0 .6rem;font-size:.9rem}.entity-tree{margin:.4rem 0 0;padding:0;list-style:none}.entity-tree ul{margin:0;padding-left:1.4rem;list-style:none}.entity-tree li{line-height:1.75}.entity-tree summary{cursor:pointer}.entity-tree summary::marker{color:var(--muted)}.entity-tree summary::-webkit-details-marker{color:var(--muted)}.entity-tree li.tree-leaf:before{content:"•";color:var(--muted);margin-right:.4rem}.entity-tree .tree-chain{color:var(--muted)}.entity-tree .tree-count{color:var(--muted);font-size:.86rem}.entity-tree-group h3{margin:.6rem 0 0;font-size:1rem}.entity-tree-group h4{color:var(--muted);margin:.7rem 0 0;font-size:.9rem;font-weight:600}.record-header{border-bottom:1px solid var(--line);margin-bottom:1rem;padding-bottom:.45rem}.record-section{border-top:1px solid var(--line-soft);margin-top:1.15rem;padding-top:.2rem}.record-section h2{border-bottom:0;margin-top:.45rem}.record-section.related-quests>summary{cursor:pointer;list-style:none}.record-section.related-quests>summary::-webkit-details-marker{display:none}.record-section.related-quests>summary h2{margin-bottom:0;display:inline-block}.record-section.related-quests>summary:after{color:var(--muted);content:"▸";margin-left:.4rem;transition:transform .15s;display:inline-block}.record-section.related-quests[open]>summary:after{transform:rotate(90deg)}.home-hero{border-bottom:1px solid var(--line);padding:.4rem 0 .85rem}.home-hero h1{margin-bottom:.2rem;font-size:1.9rem}.home-hero p{color:var(--muted);max-width:52rem;margin:0 0 .7rem}.home-links{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin:1rem 0 1.2rem;display:grid}.home-link-card{border-right:1px solid var(--line-soft);min-width:0;color:var(--ink);justify-content:space-between;align-items:baseline;gap:.5rem;padding:.5rem .75rem;text-decoration:none;display:flex}.home-link-card:last-child{border-right:0}.home-link-card:hover{background:var(--accent-soft);color:var(--link-hover);text-decoration:underline}.home-link-card .card-title{font-family:var(--font-reading);font-weight:700}.home-link-card .card-count{color:var(--muted);white-space:nowrap;font-size:.82rem}.chips{flex-wrap:wrap;gap:.25rem .7rem;margin:.45rem 0 .85rem;display:flex}.chip{color:var(--link);border:0;border-radius:0;padding:0;font-size:.9rem;text-decoration:underline}.chip.active{color:var(--accent);background:0 0;font-weight:700}.chip.active:before{content:"["}.chip.active:after{content:"]"}.index-note{color:var(--muted);font-size:.86rem}.search-form{gap:.35rem;max-width:42rem;margin:.75rem 0 1rem;display:flex}.search-form input[type=search]{border:1px solid var(--line);background:var(--paper-light);border-radius:0;flex:1;min-width:0;padding:.38rem .55rem;font-size:.95rem}.search-form button{border:1px solid var(--ink);background:var(--ink);color:var(--paper-light);border-radius:0;padding:.38rem .85rem;font-size:.9rem}.toolbar,.admin-toolbar{border-top:1px solid var(--line);border-bottom:1px solid var(--line-soft);flex-wrap:wrap;justify-content:space-between;align-items:end;gap:.75rem;margin:.8rem 0;padding:.55rem 0;display:flex}.toolbar .search-form,.admin-toolbar .search-form{margin:0}.toolbar-links{flex-wrap:wrap;align-items:baseline;gap:.65rem;font-size:.9rem;display:flex}.entity-list,.text-list{border-top:1px solid var(--line);margin:.8rem 0;padding:0;list-style:none}.entity-list li,.text-list li{border-bottom:1px solid var(--line-soft);padding:.45rem .25rem}.entity-list li{grid-template-columns:minmax(11rem,1fr) minmax(18rem,2.4fr);align-items:baseline;column-gap:1.25rem;display:grid}.entity-list .item-name,.text-list .text-title{font-family:var(--font-reading);font-size:1rem;font-weight:700}.entity-list .item-meta{grid-column:2}.item-meta{color:var(--muted);font-size:.86rem}.text-list li{grid-template-columns:minmax(14rem,1fr) minmax(20rem,2fr);align-items:baseline;column-gap:1.25rem;display:grid}.text-list .item-meta{grid-column:2}.record-meta{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:minmax(7rem,9rem) 1fr;margin:0 0 1.15rem;display:grid}.record-meta dt,.record-meta dd{border-bottom:1px solid var(--line-soft);margin:0;padding:.35rem .5rem}.record-meta>div{display:contents}.record-meta dt{color:var(--muted);font-size:.86rem}.record-meta>div:last-child>dt,.record-meta>div:last-child>dd,.record-meta>dt:last-of-type,.record-meta>dd:last-of-type{border-bottom:0}.meta-panel{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:0 0;border-radius:0;margin-bottom:1.2rem;padding:0;font-size:.9rem}.meta-panel .meta-row{border-bottom:1px solid var(--line-soft);grid-template-columns:minmax(7rem,9rem) 1fr;margin:0;padding:.35rem .5rem;display:grid}.meta-panel .meta-row:last-child{border-bottom:0}.meta-label{min-width:0;color:var(--muted);display:inline}.catalog-table,.admin-table{border-collapse:collapse;width:100%;min-width:42rem;margin:.8rem 0;font-size:.9rem}.catalog-table th,.catalog-table td,.admin-table th,.admin-table td{border-bottom:1px solid var(--line-soft);text-align:left;vertical-align:top;padding:.38rem .5rem}.catalog-table td,.admin-table td{overflow-wrap:anywhere}.catalog-table th,.admin-table th{border-top:1px solid var(--line);color:var(--muted);white-space:nowrap;font-size:.8rem;font-weight:700}.catalog-table tr:hover,.admin-table tr:hover{background:#eee1d873}.table-wrap{max-width:100%;overflow-x:auto}.prose{max-width:52rem;font-family:var(--font-reading);font-size:1rem;line-height:1.78}.prose p{margin:0 0 .75rem}.prose h1,.prose h2,.prose h3{border:0;margin-top:1.35rem;margin-bottom:.45rem;padding:0}.prose blockquote{border-left:3px solid var(--line);color:var(--muted);margin:.8rem 0;padding:.1rem 0 .1rem .9rem}.prose ul,.prose ol{margin:.35rem 0 .8rem;padding-left:1.5rem}.prose li{margin-bottom:.15rem}.wiki-link{color:var(--link);text-decoration:underline}.wiki-link:hover{color:var(--link-hover)}.related-group{border-top:1px solid var(--line-soft);margin-bottom:1rem;padding-top:.45rem}.related-group .related-source{color:var(--muted);margin-bottom:.3rem;font-size:.84rem}.related-block{border-left:2px solid var(--line);margin:.45rem 0 .7rem;padding:.1rem 0 .1rem .8rem}.empty{color:var(--muted);padding:.75rem 0}.block-anchor{float:left;width:2.2rem;color:var(--muted);font-family:var(--font-ui);margin-left:-2.5rem;font-size:.76rem;text-decoration:none}.related-excerpt{font-size:.92rem;line-height:1.6}.btn{border:1px solid var(--line);color:var(--ink);background:0 0;border-radius:0;padding:.32rem .7rem;font-size:.88rem;line-height:1.4;text-decoration:none;display:inline-block}.btn:hover{border-color:var(--ink);background:var(--accent-soft);color:var(--ink);text-decoration:none}.btn.primary{border-color:var(--ink);background:var(--ink);color:var(--paper-light)}.btn.primary:hover{border-color:var(--accent);background:var(--accent);color:#fff}.btn.danger{border-color:var(--danger);color:var(--danger)}.btn.small{padding:.2rem .5rem;font-size:.8rem}.btn[disabled],.btn[disabled]:hover{opacity:.55;cursor:not-allowed;border-color:var(--line);color:var(--muted);background:0 0}.btn.primary[disabled],.btn.primary[disabled]:hover{border-color:var(--ink);background:var(--ink);color:var(--paper-light)}.badge{border:1px solid var(--line);color:var(--muted);vertical-align:baseline;border-radius:0;padding:.05rem .35rem;font-size:.75rem;line-height:1.35;display:inline-block}.badge.draft{border-color:var(--warn);color:var(--warn)}.badge.published{border-color:var(--ok);color:var(--ok)}.form-grid{gap:.7rem;max-width:52rem;display:grid}.form-grid.form-grid-wide{max-width:none}.form-field{gap:.2rem;display:grid}.form-field label{color:var(--muted);font-size:.84rem;font-weight:700}.form-field label:has(>input[type=checkbox]){font-size:.8rem;font-weight:400}.form-field .hint,.hint{color:var(--muted);font-size:.8rem}.form-field input[type=text],.form-field input[type=password],.form-field input[type=number],.form-field textarea,.form-field select{border:1px solid var(--line);background:var(--paper-light);border-radius:0;width:100%;padding:.36rem .5rem;font-size:.92rem}.form-field textarea{resize:vertical}.form-field textarea.mono{min-height:18rem;font-family:ui-monospace,SFMono-Regular,Consolas,Courier New,monospace;font-size:.88rem;line-height:1.6}.form-actions{border-top:1px solid var(--line-soft);align-items:center;gap:.55rem;margin-top:.25rem;padding-top:.65rem;display:flex}.checkbox-label{margin-left:.4rem}.alert{border:1px solid var(--line);border-left:4px solid var(--line);background:0 0;border-radius:0;margin-bottom:.8rem;padding:.5rem .7rem;font-size:.88rem}.alert ul{margin:.35rem 0 .4rem;padding-left:1.2rem}.alert .hint{margin:0}.alert.warn{border-color:var(--warn);color:var(--warn)}.alert.ok{border-color:var(--ok);color:var(--ok)}.alert.danger{border-color:var(--danger);color:var(--danger)}.admin-layout{grid-template-columns:175px minmax(0,1fr);gap:1.4rem;min-height:60vh;padding:.6rem 0 2.5rem;display:grid}.admin-sidebar{border-right:1px solid var(--line);padding-right:1rem}.admin-sidebar h2{border-bottom:1px solid var(--line);margin:0 0 .45rem;padding-bottom:.25rem;font-size:1rem}.admin-sidebar nav{flex-direction:column;gap:.1rem;display:flex}.admin-sidebar nav a,.admin-sidebar nav form{padding:.2rem 0;display:block}.admin-sidebar nav a{color:var(--ink)}.admin-sidebar nav a:hover{color:var(--link-hover)}.admin-sidebar nav form{border-top:1px solid var(--line-soft);margin-top:.35rem;padding-top:.55rem}.admin-main{min-width:0}.login-page{max-width:32rem;margin-top:1.5rem}.admin-main>h1:first-child{border-bottom:1px solid var(--line);padding-bottom:.3rem}.admin-main .home-links{grid-template-columns:repeat(4,minmax(0,1fr));margin-top:.8rem}.admin-stats{border-collapse:collapse;width:100%;margin:.8rem 0 1.2rem}.admin-stats th,.admin-stats td{border-bottom:1px solid var(--line-soft);text-align:left;padding:.38rem .5rem}.admin-stats th{color:var(--muted);font-size:.82rem}.block-card{border-top:1px solid var(--line-soft);background:0 0;border-radius:0;margin-bottom:.7rem;padding:.55rem 0}.block-card .block-head{color:var(--muted);justify-content:space-between;align-items:baseline;gap:.7rem;margin-bottom:.25rem;font-size:.8rem;display:flex}.block-card .block-body{font-size:.94rem}.block-card .block-entities{margin-top:.35rem;font-size:.82rem}.manual-link-list{border-top:1px solid var(--line-soft);margin:.45rem 0;padding-top:.4rem}.manual-link-group{border:0;border-bottom:1px solid var(--line-soft);margin:0;padding:.35rem 0}.manual-link-title{color:var(--muted);font-size:.8rem;font-weight:700}.manual-link-options{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.2rem .75rem;display:grid}.manual-link-option{font-size:.84rem}.preview-box{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:.75rem 0}.entity-form-meta,.text-form-meta,.form-field-pair{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:.7rem 1rem;display:grid}.form-field-full{grid-column:1/-1}@media (max-width:760px){.container{width:min(100% - 1.5rem,1120px)}.header-inner{flex-direction:column;align-items:flex-start;gap:.35rem}.nav{gap:.65rem}.home-links,.admin-main .home-links{grid-template-columns:repeat(2,minmax(0,1fr))}.home-link-card:nth-child(2n){border-right:0}.home-link-card:nth-child(n+3){border-top:1px solid var(--line-soft)}.entity-list li,.text-list li{display:block}.entity-list .item-meta,.text-list .item-meta{margin-top:.15rem;display:block}.record-meta,.meta-panel .meta-row{grid-template-columns:6.5rem 1fr}.admin-layout{grid-template-columns:1fr;gap:.8rem}.admin-sidebar{border-right:0;border-bottom:1px solid var(--line);padding:0 0 .55rem}.admin-sidebar nav{flex-flow:wrap;gap:.2rem .8rem}.admin-sidebar nav form{border-top:0;margin-top:0;padding-top:.2rem}.entity-form-meta,.text-form-meta,.form-field-pair{grid-template-columns:1fr}.site-footer-inner{text-align:left}}@media print{body,.site-header,.site-footer{background:#fff}.site-header{border-bottom:1px solid #000}.nav,.search-form,.btn,.admin-sidebar{display:none}.container{width:100%}a{color:#000;text-decoration:none}}.item-list{margin:0;padding:0;list-style:none}.item-list li{padding:.2rem 0;font-size:.92rem}.multi-row-editor{flex-direction:column;gap:.4rem;display:flex}.multi-row{flex-wrap:wrap;align-items:center;gap:.4rem;display:flex}.multi-row select,.multi-row input[type=text]{border:1px solid var(--line);background:var(--paper-light);border-radius:0;padding:.36rem .5rem;font-size:.92rem}.multi-row select{flex:10rem}.multi-row input[type=text]{flex:8rem}.meta-multi-line{line-height:1.7}.relation-actions{gap:.3rem;margin-left:.5rem;display:inline-flex}.relation-form{border-top:1px solid var(--line-soft);margin-top:.5rem;padding-top:.5rem}.date-row{flex-wrap:wrap;align-items:center;gap:.3rem;display:flex}.date-row input[type=number]{border:1px solid var(--line);background:var(--paper-light);border-radius:0;width:5.5rem;padding:.36rem .5rem;font-size:.92rem}.date-sep{color:var(--muted);font-size:.92rem}.checkbox-inline{color:var(--muted);white-space:nowrap;align-items:center;gap:.4rem;margin-left:.3rem;font-size:.8rem;font-weight:400;display:inline-flex}.place-row{flex-wrap:wrap;gap:.4rem;margin-top:.4rem;display:flex}.place-row select,.place-row input[type=text]{border:1px solid var(--line);background:var(--paper-light);border-radius:0;flex:12rem;padding:.36rem .5rem;font-size:.92rem}
