/* The Stacks (Martial Arts Library) */
.stx{position:fixed;inset:0;z-index:9100;background:rgba(10,8,6,.78);display:flex;align-items:center;justify-content:center;padding:12px}
.stx[hidden]{display:none}
.stx [hidden]{display:none!important}
.stx-in{position:relative;width:min(900px,100%);height:min(88vh,860px);display:flex;flex-direction:column;background:#f6efe2 linear-gradient(#f8f2e6,#efe4cf);border:2px solid #6b4a2b;border-radius:14px;box-shadow:0 20px 60px rgba(0,0,0,.6);color:#2a2017;overflow:hidden}
.stx-top{display:flex;align-items:center;gap:8px;padding:10px 10px 0 12px;border-bottom:2px solid #c9b48f;background:#e9dcc2}
.stx-tabs{display:flex;gap:4px;overflow-x:auto;flex:1;scrollbar-width:none}
.stx-tab{flex:0 0 auto;border:1px solid #c9b48f;border-bottom:0;border-radius:8px 8px 0 0;background:#f3e8d3;color:#5b4a37;font:700 14px/1 "Barlow Condensed",sans-serif;letter-spacing:1px;text-transform:uppercase;padding:10px 12px;cursor:pointer}
.stx-tab.on{background:#f8f2e6;color:#2a2017;border-color:#8b5a2b;position:relative;top:2px}
.stx-cnt{display:inline-block;min-width:1.4em;background:#c8102e;color:#fff;border-radius:9px;font-size:12px;padding:2px 4px;text-align:center}
.stx-cnt:empty{display:none}
.stx-x{flex:0 0 auto;width:38px;height:38px;border-radius:50%;border:2px solid #2a2017;background:transparent;font-size:22px;line-height:1;cursor:pointer;color:#2a2017;margin-bottom:8px}
.stx-body{flex:1;overflow:auto;padding:16px 18px 24px;-webkit-overflow-scrolling:touch}
.stx-lead{font-size:15px;color:#5b4a37;margin:0 0 12px}
.stx-h{font-family:"Barlow Condensed",sans-serif;font-size:26px;margin:4px 0 4px}
.stx-back{background:none;border:0;color:#8b5a2b;font:700 13px "Barlow",sans-serif;cursor:pointer;padding:4px 0;margin-bottom:6px;text-transform:uppercase;letter-spacing:1px}
.stx-wings{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:10px}
.stx-wing{text-align:left;background:#fffaf0;border:1px solid #c9b48f;border-left:8px solid #6b3a22;border-radius:8px;padding:14px;cursor:pointer;color:inherit;font:inherit}
.stx-wing b{display:block;font-family:"Barlow Condensed",sans-serif;font-size:21px;letter-spacing:.5px}
.stx-wing span{display:block;font-size:14px;color:#5b4a37;margin:2px 0 6px}
.stx-wing small{font-size:12px;color:#8b5a2b;text-transform:uppercase;letter-spacing:1px}
.stx-wing.ref{border-left-color:#2f3d4a}
.stx-wing:hover,.stx-wing:focus-visible{border-left-color:#c8102e;background:#fff}
/* shelves of spines */
.stx-shelves{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:18px 14px;margin-top:10px}
.stx .stx-shelf{margin:0;padding:0;min-height:0;background:none;border:0}
.stx-shelf h4{margin:0 0 6px;font:700 15px "Barlow Condensed",sans-serif;letter-spacing:1px;text-transform:uppercase;color:#6b4a2b}
.stx-row{display:flex;align-items:flex-end;gap:3px;height:190px;padding:10px 10px 0;overflow-x:auto;overflow-y:hidden;background:linear-gradient(#3a2414,#2a190d);border-radius:6px 6px 0 0;border-bottom:12px solid #5a3a24;box-shadow:inset 0 10px 18px rgba(0,0,0,.5);scrollbar-width:thin}
.stx-spine{position:relative;flex:0 0 auto;border:0;border-radius:3px 3px 1px 1px;cursor:pointer;padding:8px 0;color:#f4e6c8;box-shadow:inset 3px 0 4px rgba(255,255,255,.12),inset -4px 0 6px rgba(0,0,0,.45),0 0 0 1px rgba(0,0,0,.4);transition:transform .15s;background-image:linear-gradient(transparent 7%,rgba(242,190,26,.55) 7%,rgba(242,190,26,.55) 8.5%,transparent 8.5%,transparent 91.5%,rgba(242,190,26,.55) 91.5%,rgba(242,190,26,.55) 93%,transparent 93%)}
.stx-spine span{display:block;height:100%;writing-mode:vertical-rl;text-orientation:mixed;font:600 12px/1.05 "Barlow Condensed",sans-serif;letter-spacing:.3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin:0 auto;max-height:100%}
.stx-spine:hover,.stx-spine:focus-visible{transform:translateY(-10px);outline:2px solid #f2be1a;outline-offset:1px}
/* book card */
.stx-card{background:#fffaf0;border:1px solid #c9b48f;border-radius:10px;padding:18px 18px 14px;box-shadow:0 4px 14px rgba(60,40,20,.15)}
.stx-card h3{font-family:"Barlow Condensed",sans-serif;font-size:28px;line-height:1.1;margin:2px 0 6px}
.stx-loc{margin:0;font-size:12px;text-transform:uppercase;letter-spacing:1px;color:#8b5a2b}
.stx-by{margin:0 0 10px;color:#5b4a37}
.stx-note{font-size:17px;line-height:1.45;margin:0 0 12px}
.stx-ed,.stx-tags,.stx-links{font-size:14px;margin:6px 0;color:#5b4a37}
.stx-ed span,.stx-tags span,.stx-links span{font-weight:700;color:#2a2017}
.stx-tag{border:1px solid #c9b48f;background:#f3e8d3;border-radius:12px;padding:3px 9px;margin:2px 2px;font:600 13px "Barlow",sans-serif;cursor:pointer;color:#5b3a1a}
.stx-tag:hover{background:#fff;border-color:#8b5a2b}
.stx-links a{color:#c8102e;font-weight:700}
.stx-find{margin-top:16px;padding:14px;border:2px dashed #8b5a2b;border-radius:10px;background:#fff8e6;opacity:0;transform:translateY(-12px);transition:opacity .4s,transform .4s}
.stx-find.on{opacity:1;transform:none}
.stx-find.kept{opacity:0;transform:scale(.95)}
.stx-fall{margin:0 0 10px;font-style:italic;color:#8b5a2b}
.stx-item{display:flex;gap:12px;align-items:flex-start;background:#fffaf0;border:1px solid #c9b48f;border-radius:8px;padding:10px 12px;margin:8px 0}
.stx-item i{flex:0 0 46px;height:46px;display:flex;align-items:center;justify-content:center;font-style:normal;font-size:24px;border-radius:6px;background:#efe4cf;color:#5b3a1a}
.stx-item.k-seal i{background:#b3261e;color:#fff;font-family:serif;font-weight:700;border-radius:4px;box-shadow:inset 0 0 0 3px rgba(255,255,255,.3)}
.stx-item b{display:block;font-family:"Barlow Condensed",sans-serif;font-size:18px}
.stx-item p{margin:2px 0 0;font-size:14px}
.stx-keep{margin-top:6px}
/* catalogue */
.stx-q{width:100%;box-sizing:border-box;padding:12px 14px;font:16px "Barlow",sans-serif;border:2px solid #8b5a2b;border-radius:8px;background:#fffaf0;color:#2a2017}
.stx-drawers{display:flex;flex-wrap:wrap;gap:4px;margin:10px 0}
.stx-drawer{min-width:34px;padding:7px 6px;border:1px solid #8b5a2b;border-radius:4px;background:linear-gradient(#a0713f,#7a5230);color:#fff4dc;font:700 13px "Barlow Condensed",sans-serif;cursor:pointer;box-shadow:inset 0 -3px 0 rgba(0,0,0,.25)}
.stx-drawer.on{background:#c8102e;border-color:#c8102e}
.stx-n{font-size:13px;color:#8b5a2b;text-transform:uppercase;letter-spacing:1px;margin:6px 0}
.stx-cardrow{display:block;width:100%;text-align:left;background:#fffaf0 repeating-linear-gradient(transparent 0 23px,rgba(120,150,200,.25) 23px 24px);border:1px solid #c9b48f;border-top:4px solid #c8102e;border-radius:4px;padding:8px 12px;margin:6px 0;cursor:pointer;color:inherit;font:inherit}
.stx-cardrow b{display:block;font-size:16px}
.stx-cardrow span{display:block;font-size:14px;color:#5b4a37}
.stx-cardrow small{display:block;font-size:12px;color:#8b5a2b;text-transform:uppercase;letter-spacing:.5px}
.stx-cardrow:hover,.stx-cardrow:focus-visible{border-top-color:#2a2017;background-color:#fff}
/* notebook + riddles */
.stx-seals{display:flex;gap:10px;margin:6px 0 10px}
.stx-seal{width:52px;height:52px;border:2px dashed #c9b48f;border-radius:6px;display:flex;align-items:center;justify-content:center;font-style:normal;font:700 28px serif;color:#fff}
.stx-seal.on{border:0;background:#b3261e;box-shadow:inset 0 0 0 3px rgba(255,255,255,.3)}
.stx-done{background:#2a2017;color:#f2be1a;padding:10px 12px;border-radius:8px}
.stx-rid{padding-left:22px}.stx-rid li{margin:10px 0;font-size:16px;line-height:1.4}
.stx-rid li.ok{color:#2c8c3a}.stx-rid li.ok::after{content:"  ✓"}
.lib-scene .stx-hot{z-index:6}
@media (max-width:560px){.stx{padding:0}.stx-in{height:100%;border-radius:0;border:0}.stx-row{height:170px}.stx-card h3{font-size:24px}}
@media (prefers-reduced-motion:reduce){.stx-spine,.stx-find{transition:none}}
