:root{--blue:#2d6fff;--ink:#172746;--muted:#65728a;--line:#e4e9f2;--surface:#fff;--background:#f5f7fb;font-family:system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--ink);background:var(--background)}*{box-sizing:border-box}body{margin:0}a{color:#245bce;text-underline-offset:3px}button,input,select{font:inherit}button,a,input,select{outline-offset:4px}button{cursor:pointer}.topbar{background:var(--surface);border-bottom:1px solid var(--line);padding:18px max(24px,calc((100vw - 1400px)/2));display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{font-weight:800;font-size:23px;text-decoration:none}.brand span{font-weight:400;color:var(--muted);font-size:15px}.nav-actions{display:flex;gap:24px;align-items:center}.nav-actions a{font-size:14px}select,input[type=search]{border:1px solid #b9c5d8;border-radius:7px;padding:10px 12px;background:white;color:var(--ink);min-height:43px}main{max-width:1450px;margin:0 auto;padding:36px 24px 50px}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:28px}.back{font-size:13px;text-decoration:none}h1{font-size:36px;letter-spacing:-1px;margin:12px 0 8px}p{line-height:1.65}.page-heading p{color:var(--muted);margin:0}.catalog-label{font-size:11px;letter-spacing:2px;font-weight:700;color:var(--muted)}.catalog{background:var(--surface);border:1px solid var(--line);border-radius:12px;overflow:hidden;box-shadow:0 8px 28px #17274605}.filters{display:flex;gap:18px;align-items:end;padding:24px;flex-wrap:wrap}.filters label{display:flex;flex-direction:column;gap:7px;font-size:13px;font-weight:600}.search-label{flex:1;min-width:210px}.filters .demo-filter{flex-direction:row;align-items:center;min-height:43px;gap:8px}.demo-filter input{width:17px;height:17px;accent-color:var(--blue)}.quiet{background:white;border:1px solid var(--line);border-radius:7px;color:var(--muted);padding:11px 16px}.result-bar{display:flex;justify-content:space-between;gap:12px;padding:14px 24px;border-top:1px solid var(--line);font-size:12px;color:var(--muted)}.table-scroll{overflow:auto}table{width:100%;border-collapse:collapse;text-align:left;font-size:14px}thead{background:#f5f7fc}th{font-size:11px;text-transform:uppercase;letter-spacing:.6px;white-space:nowrap;color:var(--muted);padding:14px 12px}th button{font:inherit;letter-spacing:inherit;text-transform:inherit;color:inherit;border:0;padding:0;background:none}th[aria-sort=ascending] button:after{content:' â†‘';color:var(--blue)}th[aria-sort=descending] button:after{content:' â†“';color:var(--blue)}td{padding:20px 12px;border-top:1px solid var(--line);vertical-align:top}th:first-child,td:first-child{padding-left:24px}td:first-child{min-width:230px;max-width:360px}td:nth-child(2){min-width:130px}td:nth-child(7){white-space:nowrap;font-weight:600}tbody tr:hover{background:#fafbff}.book-title{font-weight:650;line-height:1.5;margin-bottom:5px}.sub{font-size:12px;color:var(--muted);line-height:1.6}.badge{display:inline-block;padding:3px 6px;border-radius:4px;background:#edf2fb;margin:0 4px 4px 0;white-space:nowrap;font-size:11px}.link-stack{display:flex;flex-direction:column;gap:8px;min-width:100px}.link-stack a{font-size:13px}.message{text-align:center;padding:45px 24px 55px}.message h2{font-size:20px;margin:0 0 10px}.message p{color:var(--muted);margin:0 auto;max-width:480px}.message button{margin-top:16px;padding:10px 18px;border:0;border-radius:6px;color:white;background:var(--blue)}.reader-note{margin-top:28px;padding:24px;border-left:3px solid var(--blue);background:#edf2ff;font-size:14px}.reader-note p{margin:5px 0 8px;color:var(--muted)}footer{max-width:1400px;margin:0 auto;padding:22px 24px;border-top:1px solid var(--line);display:flex;justify-content:space-between;font-size:12px;color:var(--muted)}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}[hidden]{display:none!important}@media(max-width:700px){.topbar{padding:14px 16px}.brand span,.catalog-label{display:none}.nav-actions{gap:12px}.nav-actions a{font-size:12px}main{padding:24px 12px}h1{font-size:30px}.filters{padding:16px;gap:12px}.search-label{flex-basis:100%}.filters label:not(.search-label){flex:1}th,td{padding:14px 10px}.result-bar{padding:12px 16px;flex-wrap:wrap}.page-heading{padding:0 4px}.reader-note{padding:18px}}

.text-button{border:0;background:none;color:#245bce;padding:0;text-align:left;font-size:13px;text-decoration:underline;text-underline-offset:3px}.text-button:disabled{opacity:.6}
