:root{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#253247;background:#f5f7fa;font-synthesis:none;line-height:1.55}*{box-sizing:border-box}body{margin:0}a{color:#214e80;text-underline-offset:.2em}button,input,select{font:inherit}button{background:#203e64;color:#fff;border:1px solid #203e64;border-radius:.45rem;padding:.6rem 1rem;cursor:pointer;min-height:44px}button:disabled{opacity:.55;cursor:default}:focus-visible{outline:3px solid #bd7614;outline-offset:3px}header{position:sticky;top:0;z-index:100;display:flex;align-items:center;gap:.6rem 1rem;min-height:56px;padding:.4rem clamp(1rem,2.5vw,3rem);background:#203e64;color:#fff;flex-wrap:nowrap;box-shadow:0 2px 10px #17263b33}.brand{font-family:Georgia,serif;font-size:1.35rem;font-weight:700;text-decoration:none;color:#fff;white-space:nowrap}.brand span{font-family:system-ui,sans-serif;font-size:.85rem;font-weight:400}.preview{font-size:.8rem;border:1px solid #9fb6ce;border-radius:1rem;padding:.15rem .7rem}.header-filters{display:flex;flex:1 1 420px;align-items:stretch;gap:.4rem;flex-wrap:nowrap;min-width:0;overflow-x:auto}.header-filter-group{display:flex;flex:0 0 auto;align-items:center;gap:.35rem;padding:.2rem .3rem .2rem .55rem;border:1px solid #6f89a7;border-radius:.45rem;background:#183451;min-width:0}.header-filter-group>span{color:#c9d8e8;font-size:.68rem;font-weight:650;text-transform:uppercase;letter-spacing:.04em}.header-filter-group>div{display:flex;gap:.25rem;min-width:0}.header-filter-group button{min-height:28px;padding:.12rem .5rem;border-radius:1rem;border-color:#b6c8da;background:#f4f8fc;color:#203e64;font-size:.74rem;font-weight:600;white-space:nowrap}.header-filter-group button span{color:#58708c;font-weight:500}.header-filter-overflow{align-self:center;padding:0 .35rem;color:#dbe7f2;font-size:.72rem;font-weight:700;white-space:nowrap}.header-filter-group .header-clear-group{min-width:28px;padding:.1rem .35rem;border-color:#e3b2a9;background:#fff1ee;color:#8d3325;font-size:.85rem}main{width:100%;margin:1.5rem auto;padding:0 clamp(1rem,2.5vw,3rem)}.panel{background:#fff;border:1px solid #d8e0ea;border-radius:.8rem;padding:1.5rem;margin-bottom:1.5rem}.narrow{max-width:500px;margin:3rem auto;padding:2rem}h1{font-family:Georgia,serif;font-size:2.1rem;line-height:1.2;margin:0 0 1rem}h2{font-size:1.35rem}.eyebrow{font-size:.8rem;text-transform:uppercase;letter-spacing:.08em;color:#54647b}.muted,footer{color:#526176;font-size:.9rem}form{display:grid;gap:1rem;margin:1.25rem 0}label{display:grid;gap:.35rem;font-weight:600}input,select{min-width:0;width:100%;border:1px solid #9aaabd;border-radius:.4rem;padding:.6rem .7rem;min-height:44px;background:#fff;color:#253247}.notice{background:#e8f3ed;border-left:3px solid #358050;padding:.8rem 1rem;border-radius:.3rem;overflow-wrap:anywhere}.notice.error{background:#fff0ec;border-color:#ba4531}.search{grid-template-columns:1fr auto;align-items:end}.table-scroll{overflow-x:auto}table{width:100%;border-collapse:collapse}caption{text-align:left;font-weight:600;padding:.5rem 0}th,td{text-align:left;padding:.7rem;border-bottom:1px solid #e1e7ef;vertical-align:top}th{background:#f2f5f9}.text-button{color:#214e80;background:transparent;border:0;padding:0;text-align:left;text-decoration:underline}.pagination{display:flex;align-items:center;justify-content:space-between;gap:.8rem;margin:1rem 0 0}.detail{margin-top:2rem;padding-top:1rem;border-top:1px solid #d8e0ea}.prose{white-space:pre-line}summary{font-weight:600;cursor:pointer;padding:.3rem 0}.invite-form{max-width:500px}dt{font-weight:600}dd{margin:0 0 .6rem}footer{padding:1rem;text-align:center}.skip-link{position:absolute;left:1rem;top:-5rem;background:#fff;padding:1rem;z-index:10}.skip-link:focus{top:1rem}.catalog-shell{display:grid;grid-template-columns:minmax(260px,310px) minmax(0,1fr);gap:1rem;align-items:start}.catalog-shell>.panel{min-width:0}.catalog-sidebar{position:sticky;top:4.5rem;display:flex;flex-direction:column;max-height:calc(100vh - 5.5rem);overflow-y:auto;padding:1rem;background:#f8fafc;border:1px solid #d8e0ea;border-radius:.8rem}.sidebar-heading{display:flex;align-items:center;justify-content:space-between;gap:.7rem}.sidebar-heading-actions{display:flex;align-items:center;gap:.35rem}.catalog .sidebar-clear{padding:.25rem .55rem;min-height:34px;color:#8d3325;border-color:#e3b2a9;background:#fff7f5}.sidebar-heading h2{margin:0;font-family:Georgia,serif}.sidebar-heading .eyebrow{margin:0}.sidebar-close,.sidebar-toggle,.sidebar-backdrop{display:none}.sidebar-navigation{display:grid;gap:.25rem;margin:.8rem 0;padding-bottom:.8rem;border-bottom:1px solid #d8e0ea}.sidebar-navigation a,.catalog .sidebar-navigation button{padding:.5rem .6rem;border-radius:.4rem;text-decoration:none;font-weight:600;text-align:left;border-color:transparent;background:transparent}.sidebar-navigation a:hover,.sidebar-navigation a:focus-visible,.catalog .sidebar-navigation button:hover,.catalog .sidebar-navigation button.is-active{background:#e8f0fa;border-color:#c8d8e9}.sidebar-search{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.45rem;align-items:end;margin:.8rem 0}.sidebar-search label{font-size:.85rem}.sidebar-result-count{margin:.8rem 0 0;padding-top:.8rem;border-top:1px solid #d8e0ea;color:#526176;font-size:.85rem}.sidebar-result-count strong{color:#253247;font-size:1rem}.sidebar-account{display:grid;gap:.2rem;margin-top:auto;padding-top:1rem;border-top:1px solid #d8e0ea;overflow-wrap:anywhere}.sidebar-account span,.sidebar-account small{color:#526176;font-size:.75rem}.sidebar-account button{margin-top:.45rem}.mobile-bottom-nav,.mobile-menu-button{display:none}.access-workspace{min-width:0;scroll-margin-top:4.5rem}.access-workspace>.panel:first-child{margin-bottom:1rem}.account-management{padding:1.1rem}.account-heading h2,.account-heading p{margin:0 0 .35rem}.account-list{display:grid;border:1px solid #d8e0ea;border-radius:.6rem;overflow:hidden}.account-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.65rem .75rem;background:#fff}.account-row+.account-row{border-top:1px solid #e1e7ef}.account-identity{display:flex;align-items:center;gap:.45rem;min-width:0;flex-wrap:wrap}.account-identity strong{overflow-wrap:anywhere}.account-state,.account-role,.account-current{border-radius:1rem;padding:.08rem .5rem;font-size:.72rem;font-weight:650}.account-state.active{background:#e8f3ed;color:#286142}.account-state.revoked{background:#f1f3f6;color:#526176}.account-role{background:#e8eef6;color:#315579;text-transform:capitalize}.account-current{background:#fff4d8;color:#805b0a}.account-actions,.account-inline-editor,.account-inline-delete{display:flex;align-items:center;gap:.45rem;flex:0 0 auto}.catalog .account-actions button,.catalog .account-inline-editor button,.catalog .account-inline-delete button{min-height:34px;padding:.25rem .65rem}.catalog button.danger{color:#8d3325;border-color:#d89b91;background:#fff7f5}.account-inline-editor{margin:0}.account-inline-editor label{font-size:.82rem}.account-role-editor{display:flex;align-items:center;gap:.5rem}.account-role-editor select{width:180px;min-height:34px;padding:.25rem .5rem}.account-access{display:flex;align-items:center;gap:.4rem;min-height:38px}.account-access input{width:1.1rem;height:1.1rem;min-height:auto}.account-inline-delete{color:#8d3325;font-size:.85rem;font-weight:650}.catalog{--hover-bg: #eff6ff;--hover-border: #93c5fd}.overview-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.8rem;margin:1rem 0 1.5rem}.overview-metrics>div{padding:1rem;border:1px solid #d8e0ea;border-radius:.6rem;background:#f8fafc}.overview-metrics span{display:block;color:#526176;font-size:.78rem;text-transform:uppercase;letter-spacing:.04em}.overview-metrics strong{display:block;margin-top:.3rem;font-size:1.55rem}.genre-overview{display:grid;gap:.55rem;max-width:900px}.genre-overview>div{display:grid;grid-template-columns:minmax(150px,1fr) minmax(120px,3fr) 3rem;gap:.7rem;align-items:center;font-size:.9rem}.genre-overview>div>div{height:.7rem;border-radius:1rem;background:#e3eaf2;overflow:hidden}.genre-overview i{display:block;height:100%;border-radius:inherit;background:#315e8f}.catalog-heading,.detail-heading{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.catalog-heading h1{margin-bottom:.25rem}.catalog .eyebrow{margin:0 0 .4rem;font-weight:600}.catalog button{width:auto;min-height:40px;padding:.45rem .8rem;background:#f8fafc;color:#253247;border-color:#cbd5e1;font-size:.9rem;font-weight:600}.catalog button.primary{background:#203e64;border-color:#203e64;color:#fff}.catalog button,.catalog input,.catalog select,.catalog summary,.catalog tr,.check-option{transition:background-color .15s ease,border-color .15s ease,box-shadow .15s ease}.catalog .text-button{background:transparent;border:0;padding:0;color:#214e80;font-size:1rem;text-decoration:none;font-weight:600}.catalog .text-button:focus-visible{text-decoration:underline}.catalog td{vertical-align:middle;font-size:.9rem}.catalog th{font-size:.78rem;text-transform:uppercase;letter-spacing:.04em;color:#526176}.catalog .bwv-cell{font-variant-numeric:tabular-nums;font-weight:650;white-space:nowrap}.catalog tr.selected-row{background:#e8f0fa;box-shadow:inset 3px 0 #315e8f}.catalog tr:focus-within{background:var(--hover-bg)}.catalog-filters{background:#f8fafc;border:1px solid #d8e0ea;border-radius:.6rem;padding:.7rem 1rem}.catalog summary{border-radius:.3rem}.filter-controls{display:grid;gap:.8rem;margin-top:.7rem}.filter-controls-heading{display:flex;align-items:start;justify-content:space-between;gap:.5rem}.filter-controls-heading .filter-hint{flex:1}.catalog .filter-controls-heading button,.catalog .clear-filter-group{min-height:32px;padding:.2rem .5rem;color:#8d3325;border-color:#e3b2a9;background:#fff7f5;font-size:.78rem;white-space:nowrap}.catalog .clear-filter-group{margin:.35rem 0}.filter-hint{margin:0;color:#526176;font-size:.85rem}.filter-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.6rem;align-items:start}.catalog-sidebar .filter-grid{grid-template-columns:1fr}.catalog-sidebar .filter-actions{align-items:stretch}.catalog-sidebar .filter-actions>label{min-width:0;flex:1 1 100%}.filter-group{border:1px solid #d8e0ea;border-radius:.45rem;padding:.45rem .65rem;background:#fff;min-width:0}.count-badge{display:inline-block;background:#e8eef6;color:#315579;font-size:.75rem;padding:.05rem .5rem;border-radius:1rem;margin-left:.4rem}.facet-search{font-size:.8rem;margin:.65rem 0}.facet-search input{font-size:.9rem}.facet-options{max-height:220px;overflow-y:auto;overscroll-behavior:contain}.check-option{display:flex;align-items:center;gap:.5rem;padding:.4rem;font-weight:400;font-size:.9rem;border-radius:.3rem;cursor:pointer;overflow-wrap:anywhere}.check-option input[type=checkbox]{width:1.1rem;min-height:1.1rem;height:1.1rem;flex-shrink:0;accent-color:#315e8f}.check-option:has(input:checked){background:#e8f0fa;color:#203e64}.check-option:focus-within{background:var(--hover-bg)}.filter-actions{display:flex;align-items:end;gap:.6rem;flex-wrap:wrap;padding-top:.1rem;border-top:1px solid #e1e7ef}.filter-actions>label{font-size:.85rem;min-width:150px}.result-summary{color:#526176;font-size:.9rem;margin:1.2rem 0 .7rem}.result-summary strong{color:#253247;font-size:1.1rem}.result-summary span{font-size:.85rem}.release-badge{display:inline-flex;align-items:center;gap:.5rem;border:1px solid #cce3d6;background:#edf7f1;color:#286142;padding:.3rem .65rem;font-size:.8rem;border-radius:1rem}.catalog .detail{border:1px solid #cbd9e9;border-left:4px solid #315e8f;background:#f8fbff;border-radius:.6rem;padding:1.3rem;scroll-margin-top:1rem}.detail-heading h2{margin:0 0 .5rem;font-family:Georgia,serif;font-size:1.55rem;line-height:1.3}.detail-heading>div{flex:1;min-width:0}.catalog .detail .prose{max-width:75ch;line-height:1.75}.references{margin-top:1.4rem}.references ul{display:grid;gap:.65rem;padding:0;list-style:none}.references li{border:1px solid #d8e0ea;border-radius:.45rem;padding:.75rem;background:#fff}.references li>a{font-weight:650}.references li p{margin:.45rem 0 0;color:#526176;font-size:.9rem}.reference-status{display:inline-block;margin-left:.6rem;border-radius:1rem;padding:.08rem .5rem;font-size:.75rem;font-weight:650}.reference-status.approved{background:#e8f3ed;color:#286142}.reference-status.needs_review{background:#fff4d8;color:#805b0a}.help-wrap{position:relative;display:inline-flex;vertical-align:middle}.catalog button.help{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;min-height:32px;padding:0;border:1px solid #9aaabd;border-radius:50%;background:transparent;color:inherit;font-size:.8rem;cursor:help}.help-tip{position:fixed;z-index:1000;right:auto;padding:.7rem .8rem;background:#253247;color:#fff;border-radius:.45rem;box-shadow:0 6px 20px #25324726;font-size:.8rem;font-weight:400;line-height:1.5;visibility:hidden;opacity:0;transition:opacity .15s ease}.help-tip.is-open,.help-wrap:focus-within .help-tip{visibility:visible;opacity:1}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(hover:hover)and (pointer:fine){.header-filter-group button:hover{background:#fff;border-color:#fff}.catalog button:not(:disabled):hover,.catalog summary:hover,.check-option:hover{background:var(--hover-bg);border-color:var(--hover-border)}.catalog button.primary:not(:disabled):hover{background:#315579;border-color:#315579}.catalog input:not(:disabled):hover,.catalog select:hover{border-color:var(--hover-border);box-shadow:0 0 0 2px #93c5fd26}.catalog tbody tr:hover{background:var(--hover-bg)}.catalog .text-button:hover{text-decoration:underline}.help-wrap:hover .help-tip{visibility:visible;opacity:1}}@media(prefers-reduced-motion:reduce){.catalog *,.help-tip{transition:none}}.help-wrap.dismissed .help-tip{visibility:hidden;opacity:0}@media(max-width:900px){body{padding-bottom:68px}header{min-height:52px;padding-block:.35rem}header .preview,header .header-filters{display:none}.mobile-menu-button{display:inline-flex;align-items:center;justify-content:center;width:44px;min-height:44px;padding:0;border-color:#9fb6ce;background:#294b75;font-size:1.3rem}main{margin-top:.8rem}.catalog-shell{display:block}.sidebar-toggle{display:none}.catalog-sidebar{position:fixed;z-index:210;inset:0 auto 0 0;width:min(90vw,380px);max-height:none;border:0;border-radius:0;box-shadow:8px 0 30px #17263b40;transform:translate(-105%);transition:transform .2s ease}.catalog-sidebar.is-open{transform:translate(0)}.sidebar-close{display:inline-flex;align-items:center;justify-content:center;width:44px;padding:0;font-size:1.5rem}.sidebar-backdrop{display:block;position:fixed;z-index:200;inset:0;width:100%;height:100%;padding:0;border:0;border-radius:0;background:#17263b70}.mobile-bottom-nav{display:grid;position:fixed;z-index:150;inset:auto 0 0;grid-template-columns:repeat(2,1fr);padding:.3rem max(.5rem,env(safe-area-inset-right)) calc(.3rem + env(safe-area-inset-bottom)) max(.5rem,env(safe-area-inset-left));background:#fff;border-top:1px solid #cbd5e1;box-shadow:0 -3px 14px #17263b1f}.catalog .mobile-bottom-nav button,.mobile-bottom-nav button{display:grid;justify-items:center;gap:0;min-height:52px;padding:.2rem;border:0;border-radius:.35rem;background:#fff;color:#526176;font-size:1.15rem}.mobile-bottom-nav button span{font-size:.7rem;font-weight:650}.mobile-bottom-nav button.is-active{background:#e8f0fa;color:#203e64}}@media(max-width:600px){main{margin-top:1rem}.panel,.narrow{padding:1rem;margin-top:1rem}header{gap:.5rem}h1{font-size:1.8rem}.search{grid-template-columns:1fr}th,td{padding:.5rem}.filter-grid{grid-template-columns:1fr}.overview-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.genre-overview>div{grid-template-columns:minmax(110px,1.3fr) minmax(80px,2fr) 2rem;gap:.45rem}.catalog button,.check-option{min-height:44px}.catalog button.help{width:44px;height:44px;min-height:44px}.catalog .search{grid-template-columns:minmax(0,1fr) auto;gap:.6rem}.catalog .detail{padding:1rem}.detail-heading{align-items:flex-start;flex-direction:column;gap:.4rem;margin-bottom:.8rem}.account-row{align-items:flex-start;flex-direction:column}.account-actions,.account-inline-editor,.account-inline-delete{width:100%;flex-wrap:wrap}.account-role-editor{flex:1 1 150px}.account-role-editor select{width:100%}}
