/* Layout follows the original Seven Deadly Sins website. */
:root{--wine:#630a1f;--wine-light:#bd647c;--ink:#ededed;--muted:#aaa1a4;--line:#38242b;--paper:#080506;--wash:#000}body{background:#000;color:#eee;font-family:Arial,"Microsoft YaHei",sans-serif}a{color:#edcbd5}header{position:relative;min-height:36px;padding:5px 18px;gap:25px;box-shadow:none;font-size:14px}.brand{font:bold 16px Arial,sans-serif;min-width:0;letter-spacing:0;text-decoration:underline}.brand span,.brand small,.version{display:none}.top-links{margin-left:auto;display:flex;gap:20px}.top-links a{color:white;font-size:14px;font-weight:bold}.search{max-width:240px;margin-left:auto}.search input{font-size:13px;padding:3px 10px;border-color:#a65168}#results{background:#14080c;border-color:#633042;top:35px}.shell{max-width:1560px;grid-template-columns:175px minmax(0,1fr) 140px}.sidebar>a{color:#eee}.sidebar>a.active{background:#310b17;color:white}.side-note strong{color:#ddd}.portal-home .shell{display:block;max-width:none;padding:0}.portal-home .sidebar,.portal-home .toc{display:none}.portal-home main{width:100%}.title-art{width:100%;padding:8px 3% 0;max-width:2100px;margin:auto}.title-art img{width:100%;height:auto;display:block}.overview{width:82%;max-width:1550px;margin:12px auto 65px}.overview h2,.category h2{font-family:Arial,"Microsoft YaHei",sans-serif;background:#630a1f;color:#fff;text-align:center;font-size:16px;font-weight:bold;line-height:1.5;padding:3px 0;margin:0;border:0}.overview p{font-size:14px;line-height:2;color:#a29b9e;margin:38px 18px 0;text-align:left;font-weight:600}.category-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:68px 20px;padding:0 24px 65px;max-width:1900px;margin:auto}.category ul{list-style:none;margin:21px auto 0;padding:0;width:150px}.category li{margin:0 0 16px}.category a{display:flex;align-items:center;gap:13px;font-size:15px;line-height:1.5;font-weight:600;color:#f4f4f4;min-height:32px}.category img{width:30px;height:30px;object-fit:contain;image-rendering:pixelated}.portal-home h1.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}footer{max-width:none;margin:0;padding:38px 10% 50px;border-color:#6a6064}.footer-grid{display:grid;grid-template-columns:1fr 1fr;gap:8%}.footer-grid h2{font-size:16px;color:#a24460;border:0;margin:0 0 15px;padding:0}.footer-grid p{font-size:13px;color:#9c9698;line-height:1.9;margin:0}.footer-links a{display:block;width:fit-content;color:#bbb;font-size:14px;margin-bottom:5px}.footer-version{margin-top:30px;color:#83767b;font-size:12px}.infobox,.table-wrap,details,.controls,.quote{background:#100b0d;border-color:#442430}.infobox .portrait,.info-image{background:#201419}.notice,.tag{background:#2c101a;color:#e4cbd3}.quote{color:#d5c7cc}th{background:#4e0b1e;color:#f5edf0}td{border-color:#38232b}select{background:#100b0d;color:white;border-color:#684350}.quick a{background:#1c0e13;border-color:#643143}.source{color:#b8a9af}h1{font-family:Arial,"Microsoft YaHei",sans-serif;font-size:30px}h2{font-size:21px}.catalog-end{margin-top:35px;font-size:13px;color:#aaa}.skip{background:#630a1f}.table-wrap table td{max-width:650px;overflow-wrap:anywhere}.portal-home .search{max-width:220px}footer span{float:none}.feature{display:none}@media(min-width:1800px){.overview{margin-bottom:100px}.category-grid{gap:95px 24px;padding-bottom:95px}.category ul{margin-top:27px}.category li{margin-bottom:22px}}@media(max-width:1000px){.category-grid{gap:45px 18px;padding:0 20px 45px}.overview{width:90%;margin-bottom:45px}.category ul{width:128px}.category a{font-size:14px}.footer-grid{gap:40px}}@media(max-width:760px){header{flex-wrap:wrap;gap:10px;padding:7px 14px}.search,.portal-home .search{order:3;max-width:none;flex-basis:100%}.top-links{gap:15px}.top-links a{font-size:13px}.category-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 14px;padding:0 14px 35px}.category h2,.overview h2{font-size:14px}.category ul{width:125px;margin-top:18px}.category li{margin-bottom:12px}.category img{width:27px;height:27px}.overview{width:calc(100% - 28px);margin:12px auto 32px}.overview p{font-size:13px;margin:20px 8px;line-height:1.9}.title-art{padding:10px 0}.footer-grid{grid-template-columns:1fr;gap:25px}footer{padding:25px 20px}.shell{padding:0 14px 30px}.portal-home .shell{padding:0}.infobox{max-width:320px}.sidebar>a{color:#ddd}}

.npc-overview .npc-bar{background:#630a1f;color:#fff;font-size:16px;text-align:center;padding:5px 12px;border:0;margin:0}.npc-major-strip{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:28px;padding:30px 4px 16px;scrollbar-width:thin;scrollbar-color:#630a1f #10090c}.npc-person{display:flex;align-items:center;gap:14px;color:#eee;font-weight:bold;font-size:15px;min-width:0}.npc-person img{width:40px;height:56px;object-fit:contain;image-rendering:pixelated}.npc-major{flex:0 0 180px;flex-direction:column;gap:12px;scroll-snap-align:start;padding:0 4px}.npc-major img{width:150px;height:180px;object-fit:contain;image-rendering:auto}.npc-carousel-nav{display:flex;justify-content:center;gap:18px;margin:16px 0 38px}.npc-carousel-nav button{color:#edcbd5;background:#230b14;border:1px solid #75384e;font-size:22px;padding:2px 16px;cursor:pointer}.npc-overview>h1{font-size:26px;margin:30px 0}.npc-region-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:48px 22px;margin:24px 0 50px}.npc-region-people{display:grid;gap:12px;padding:22px 10px}.npc-region-town .npc-region-people{grid-template-columns:1fr 1fr;grid-auto-flow:column;grid-template-rows:repeat(6,auto)}.npc-region-people .npc-person{min-height:56px}.npc-region-people a:hover span{text-decoration:underline}.npc-person span{overflow-wrap:anywhere}@media(max-width:1100px){.npc-region-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.npc-region-town{grid-column:span 2}}@media(max-width:600px){.npc-region-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 12px}.npc-region-town{grid-column:span 2}.npc-region-people{padding:18px 4px;gap:12px}.npc-person{gap:8px;font-size:14px}.npc-major{flex-basis:142px}.npc-major img{width:120px;height:150px}.npc-major-strip{gap:18px}.npc-overview .npc-bar{font-size:15px}}

.npc-major img{image-rendering:pixelated}.npc-region-grid>.npc-region:nth-child(5){grid-column:1}.npc-region-people img{height:40px;flex-shrink:0}

.npc-region-town .npc-region-people{grid-template-rows:repeat(5,auto)}.npc-region-other{grid-column:1/-1}.npc-region-other .npc-region-people{grid-template-columns:repeat(4,minmax(0,1fr))}@media(max-width:600px){.npc-region-other .npc-region-people{grid-template-columns:repeat(2,minmax(0,1fr))}}


.random-tip>div{display:flex;align-items:center;gap:12px}.tip-refresh,.map-controls button{background:#4e0b1e;color:#f8dae3;border:1px solid #884158;border-radius:3px;padding:2px 10px;cursor:pointer}.tip-refresh{font-size:22px;line-height:1.2}.random-tip p{margin-bottom:0}.toc a.current-section{color:#fff;background:#4e0b1e;border-left:3px solid #e99bb3;padding-left:10px;font-weight:bold}.toc a{transition:background .15s}.toc{max-height:calc(100vh - 160px);overflow-y:auto}#back-to-top{position:fixed;right:22px;bottom:22px;z-index:20;background:#630a1f;color:#fff;border:1px solid #b76a80;border-radius:4px;padding:9px 14px;box-shadow:0 3px 15px #0008}.map-gallery figcaption{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px}.map-controls{display:flex;align-items:center;gap:18px}.map-controls button{font-size:26px;line-height:1.2;min-width:38px}.map-controls strong{min-width:3em;text-align:center}.dlc-group{margin:24px 0;border:2px solid #793047}.dlc-group>summary{font-size:20px;font-weight:bold}.dlc-group .dlc-notice{border:0;margin:0 0 20px}.dlc-group .dlc-notice>strong{display:none}.footer-grid{grid-template-columns:2fr 1fr 1fr;gap:6%}@media(max-width:760px){.footer-grid{grid-template-columns:1fr}.map-gallery figcaption{flex-wrap:wrap}#back-to-top{right:12px;bottom:12px}}

.random-tip{position:relative;padding-right:42px}.random-tip .tip-refresh{position:absolute;right:10px;top:10px;width:23px;height:23px;padding:0;background:transparent;border:0;color:#ccc;opacity:.45;font-size:18px;line-height:23px}.random-tip .tip-refresh:hover,.random-tip .tip-refresh:focus-visible{opacity:.85}.map-image-frame{position:relative;width:fit-content;max-width:100%}.map-image-frame>a{display:block}.map-arrow{position:absolute;top:50%;transform:translateY(-50%);width:30px;height:44px;padding:0;background:rgba(110,110,110,.22);color:rgba(230,230,230,.6);border:0;border-radius:3px;font-size:32px;line-height:1;cursor:pointer}.map-arrow-prev{left:4px}.map-arrow-next{right:4px}.map-arrow:hover,.map-arrow:focus-visible{background:rgba(125,125,125,.42);color:#eee}.map-gallery figcaption{max-width:688px}.map-gallery figcaption>strong{font-weight:400;color:#aaa}.toc a.current-section{background:transparent;border:0;padding:5px 0;color:#fff;font-weight:bold}.toc a{transition:color .15s}#back-to-top{top:52px;right:18px;bottom:auto;width:30px;height:34px;padding:0;background:transparent;border:0;box-shadow:none;color:#ccc;opacity:.4;font-size:24px;line-height:1}#back-to-top:hover,#back-to-top:focus-visible{opacity:.85}.contact-email{display:block;color:#bbb;font-size:14px;margin-bottom:5px}@media(max-width:760px){#back-to-top{top:105px;right:10px}.map-arrow{width:26px;height:38px}}

.toc-top{display:block;font:inherit;font-weight:500;color:inherit;padding:0;margin:0 0 12px;border:0;background:transparent;cursor:pointer;text-align:left}.toc-top:hover{color:#fff}.map-image-frame{display:grid;grid-template-columns:30px minmax(0,688px) 30px;gap:24px;align-items:center;width:796px;max-width:100%;margin-inline:auto}.map-image-frame>a{grid-column:2;grid-row:1;min-width:0}.map-image-frame img{width:100%;max-width:100%}.map-arrow{position:static;transform:none;grid-row:1}.map-arrow-prev{grid-column:1}.map-arrow-next{grid-column:3}.map-gallery figcaption{width:688px;max-width:calc(100% - 108px);margin-inline:auto}@media(max-width:760px){.map-image-frame{grid-template-columns:26px minmax(0,1fr) 26px;gap:12px;width:100%}.map-gallery figcaption{max-width:calc(100% - 76px)}}

.npc-map-gallery .map-image-frame{grid-template-columns:30px minmax(0,848px) 30px;width:956px}.npc-map-gallery img{max-width:100%;height:auto}.npc-spouse-gallery{display:flex;flex-wrap:wrap;align-items:flex-end;gap:40px}.npc-spouse-gallery .map-gallery{max-width:300px}.npc-spouse-gallery .map-image-frame{display:block;width:auto}.npc-spouse-gallery .map-image-frame img{width:auto;max-height:288px}.npc-spouse-gallery .map-gallery figcaption{width:auto;max-width:100%;justify-content:center}.npc-event-index{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.npc-event-index a{padding:10px 14px;background:#160b10;border-bottom:1px solid #4a2331}#npc-schedule-table table{table-layout:fixed}#npc-schedule-table th:first-child,#npc-schedule-table td:first-child{width:150px}@media(max-width:760px){.npc-map-gallery .map-image-frame{grid-template-columns:26px minmax(0,1fr) 26px;width:100%}.npc-event-index{grid-template-columns:repeat(2,minmax(0,1fr))}#npc-schedule-table th:first-child,#npc-schedule-table td:first-child{width:115px}}
