:root{--bg:#f5f7f9;--ink:#26372f;--muted:#697b72;--blue:#326b54;--blue-soft:#e8f1ec;--line:#e0e7e3;--radius:15px}
.topbar{height:72px;padding:0 max(24px,calc((100vw - 1200px)/2));background:#fff;position:relative}.brand-mark{background:var(--blue);box-shadow:none}.brand strong{color:var(--ink)}.preview-badge{color:var(--blue);background:var(--blue-soft);border:0}.top-right{gap:16px}.original-preview{font-size:12px;color:var(--muted)}
body[data-page=catalog] .shell{display:block;max-width:1200px;padding:0 24px;min-height:calc(100vh - 72px)}body[data-page=catalog] .sidebar{display:none}body[data-page=catalog] #mobile-menu{display:none}body[data-page=catalog] #main{padding:32px 0 50px;max-width:none}
.explore-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:25px}.explore-kicker{font-size:12px;color:var(--blue);letter-spacing:2px;margin:0 0 7px}.explore-heading h1{font-size:29px;letter-spacing:.1px;font-weight:650}.explore-heading .subtitle{margin-top:8px;font-size:13px;color:var(--muted)}.shelf-mark{font-size:21px;font-family:serif;line-height:1.2;color:#698273;border:1px solid #c3d5c9;border-radius:8px;padding:10px 12px;transform:rotate(5deg);margin-right:5px}
.discovery-panel{background:white;border:1px solid var(--line);border-radius:17px;padding:23px 25px;box-shadow:0 3px 12px #243a2b03}.discovery-panel .searchbox{max-width:none;height:52px;background:#f8faf9;border-color:var(--line);border-radius:10px}.search-hint{font-size:12px;white-space:nowrap;color:#96a49c}.browse-tabs{display:flex;gap:26px;margin:20px 0 18px;border-bottom:1px solid var(--line)}.browse-tabs button{padding:0 0 12px;color:var(--muted);font-size:14px;border-bottom:2px solid transparent}.browse-tabs .active{color:var(--blue);font-weight:600;border-bottom-color:var(--blue)}.board-line{display:flex;align-items:flex-start;gap:13px}.filter-label{font-size:12px;color:#78877f;white-space:nowrap;padding-top:8px}.board-buttons{display:flex;gap:8px;flex-wrap:wrap;flex:1}.board-button{display:flex;align-items:center;gap:8px;padding:7px 11px;font-size:13px;border-radius:7px;border:1px solid transparent;background:#f5f7f6;white-space:nowrap}.board-button:hover{background:#edf3ef}.board-button.active{background:var(--blue-soft);color:var(--blue);border-color:#c6dbce;font-weight:600}.board-chevron{color:#91a297;font-size:12px}.tag-toggle{display:flex;gap:7px;align-items:center;white-space:nowrap;font-size:12px;color:var(--muted);padding:8px 0}
.topic-drawer{margin:17px 0 0;padding:18px 20px;background:#f7faf8;border:1px solid #e5ece7;border-radius:10px}.drawer-heading{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:12px}.drawer-heading strong{font-size:13px;font-weight:600}.drawer-heading strong span{font-weight:400;color:var(--muted);font-size:12px}.drawer-heading p{font-size:12px;color:var(--muted);margin:3px 0 0}.tag-search{display:flex;align-items:center;gap:8px;background:white;border:1px solid var(--line);border-radius:7px;padding:7px 10px;color:#90a096}.tag-search input{width:140px;font-size:12px;outline:none;border:0;color:var(--ink);background:transparent}.drawer-tags{display:flex;flex-wrap:wrap;gap:8px;max-height:220px;overflow:auto;padding:2px}.drawer-tags .tag-filter,.sub-board-line .tag-filter{background:white;color:var(--muted);border-color:var(--line);padding:5px 10px;font-size:12px}.drawer-tags .active,.sub-board-line .active{background:var(--blue-soft);color:var(--blue);border-color:#a9cbb7}.more-tags{font-size:12px;color:var(--blue);padding:0;margin-top:13px}.tag-empty{font-size:12px;padding:5px;color:var(--muted)}.sub-board-line{display:flex;gap:8px;flex-wrap:wrap;padding-bottom:13px;margin-bottom:13px;border-bottom:1px solid var(--line)}
.selection-summary{display:flex;gap:12px;align-items:center;margin-top:16px;border-top:1px solid var(--line);padding-top:13px}.selection-summary>.filter-label{padding:0}.selection-summary>div{display:flex;flex-wrap:wrap;gap:6px;flex:1}.selection-chip{font-size:12px;padding:4px 9px;border-radius:5px;background:var(--blue-soft);color:var(--blue);text-align:left}.selection-chip span{margin-left:6px}.clear-filters{font-size:12px;color:var(--muted);white-space:nowrap}.content-toolbar{display:flex;justify-content:space-between;align-items:center;gap:15px;margin:25px 0 17px}.content-toolbar>div:first-child{display:flex;align-items:baseline;gap:14px}.content-toolbar h2{font-size:17px;margin:0;font-weight:600}.content-toolbar #result-count{font-size:12px;color:var(--muted)}.content-controls{display:flex;align-items:center;gap:14px}.content-controls select{font-size:12px;border:0;color:var(--muted);background:transparent;padding:5px 0}.type-control{font-size:12px;color:var(--muted)}.view-switch{margin:0;background:#e7ece9}.view-switch .active{color:var(--blue)}.curated-note{font-size:12px;color:var(--muted);margin:17px 0 0}
.resources{gap:17px}.resource{padding:22px;min-height:238px;border-color:var(--line);box-shadow:0 2px 8px #20352703}.resource:hover{border-color:#adc7b7;box-shadow:0 8px 20px #20352709}.resource h3{font-size:17px;color:var(--ink)}.resource-summary{color:#6b7b73;line-height:1.85;font-size:14px}.resource-icon{width:38px;height:38px;font-size:20px}.card-top{margin-bottom:15px}.tag-chip{background:#f0f5f2;color:#688572;font-size:11px}.resource-tags .tag-chip:nth-child(n+4){display:none}.resource-footer{border-color:#edf1ee}.primary{background:var(--blue);box-shadow:none}.primary:hover{background:#265340}.resources.list .resource{min-height:0}.list .resource h3{font-size:16px}.list .resource:hover{transform:none;background:#f8fbf9}
@media(max-width:800px){.topbar{height:64px;padding:0 18px}.top-right{gap:10px}.original-preview{display:none}body[data-page=catalog] .shell{padding:0 18px}body[data-page=catalog] #main{padding-top:25px}.explore-heading h1{font-size:25px}.explore-kicker{font-size:11px}.shelf-mark{display:none}.discovery-panel{padding:18px}.search-hint{display:none}.board-line{flex-wrap:wrap;gap:8px}.board-buttons{flex-basis:calc(100% - 40px)}.tag-toggle{margin-left:auto;padding:5px 0 0}.topic-drawer{padding:15px;margin-top:12px}.drawer-heading{align-items:flex-start;flex-direction:column;gap:10px}.tag-search{width:100%}.tag-search input{width:100%}.drawer-tags{max-height:190px}.content-toolbar{align-items:flex-start;flex-direction:column;gap:12px;margin-top:23px}.content-controls{width:100%;gap:18px}.content-controls .view-switch{margin-left:auto}.resources{grid-template-columns:repeat(2,minmax(0,1fr))}.selection-summary{gap:8px}.selection-summary>.filter-label{display:none}}
@media(max-width:480px){.resources{grid-template-columns:1fr}.resource{min-height:0;padding:20px}.browse-tabs{gap:24px;margin-top:18px}.browse-tabs button{font-size:13px}.board-button{padding:7px 9px;font-size:12px}.board-line>.filter-label{display:none}.board-buttons{flex-basis:100%}.drawer-heading p{line-height:1.6}.content-toolbar>div:first-child{gap:10px;flex-wrap:wrap}.explore-heading{margin-bottom:20px}.explore-heading .subtitle{font-size:12px}.explore-heading h1{font-size:24px}.explore-heading .primary{padding:8px 10px;font-size:12px}.content-toolbar h2{font-size:16px}}
.resources .compact-resource{min-height:0;padding:18px 20px;border-radius:13px;gap:0}
.compact-resource .card-body{flex:1;min-width:0}
.compact-heading{display:flex;align-items:flex-start;gap:12px;justify-content:space-between}
.compact-heading h3{flex:1;min-width:0;margin:0;font-size:17px;line-height:1.5;overflow-wrap:anywhere}
.compact-heading .access-badge{flex-shrink:0;margin-top:2px;font-size:10px;padding:2px 6px;white-space:nowrap}
.compact-resource .resource-summary{margin:9px 0 12px;line-height:1.75;font-size:13px}
.compact-resource .resource-tags{margin-top:0;gap:6px;min-height:20px;align-items:center}
.compact-resource .resource-footer{margin-top:12px;padding-top:10px;font-size:10px;line-height:1.5}
.extra-tags{font-size:11px;color:var(--muted)}
.resources.list .compact-resource{display:flex;flex-direction:row;align-items:center;gap:24px;padding:17px 20px}
.list .compact-resource .card-body{flex:1}
.list .compact-heading h3{font-size:16px}
.list .compact-resource .resource-summary{margin:5px 0 8px}
.list .compact-resource .resource-footer{display:flex;flex-direction:column;gap:7px;align-items:flex-end;margin:0;padding:0;border:0;flex-shrink:0;min-width:80px}
@media(max-width:480px){.resources .compact-resource{padding:17px 18px}.compact-heading h3{font-size:16px}.resources.list .compact-resource{display:flex;flex-direction:column;align-items:stretch;gap:10px;padding:16px 18px}.list .compact-resource .resource-footer{flex-direction:row;justify-content:space-between;border-top:1px solid #edf1ee;padding-top:9px}.compact-heading{gap:9px}}
