@import "https://fonts.googleapis.com/css2?family=Public+Sans:wght@400;600;700&family=Inter:wght@400;500;600&display=swap";:root{--primary:#001e40;--primary-hover:#002d5c;--secondary:#0095f8;--secondary-hover:#0080d8;--on-primary:#fff;--surface:#f9f9ff;--surface-dim:#cfdaf1;--surface-container-lowest:#fff;--surface-container-low:#f0f3ff;--surface-container:#e7eeff;--surface-container-high:#dee8ff;--on-surface:#111c2c;--on-surface-variant:#43474f;--inverse-on-surface:#ebf1ff;--outline:#737780;--outline-variant:#c3c6d1;--error:#ba1a1a;--success:#00695c;--font-display:"Public Sans", sans-serif;--font-body:"Inter", sans-serif;--space-1:8px;--space-2:16px;--space-3:24px;--space-4:32px;--space-5:40px;--space-6:48px;--container-max:1200px;--sidebar-width:280px;--gutter:24px;--margin-desktop:32px;--margin-mobile:16px;--radius-sm:.25rem;--radius-md:.5rem;--radius-full:9999px;--shadow-float:0 4px 12px #001e4014;--shadow-modal:0 16px 48px #001e402e;--qualis-a1:#00695c;--qualis-a2:#1565c0;--qualis-a3:#6a1b9a;--qualis-a4:#7b1fa2;--qualis-b1:#e65100;--qualis-b2:#bf360c;--qualis-b3:#b71c1c;--qualis-b4:#880e4f;--qualis-c:#616161;--transition-fast:.15s ease;--transition-normal:.25s ease}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{font-family:var(--font-body);color:var(--on-surface);background:var(--surface);-webkit-font-smoothing:antialiased;scroll-behavior:smooth;font-size:16px;line-height:1.5}body{flex-direction:column;min-height:100vh;display:flex}a{color:var(--secondary);text-decoration:none}a:hover{text-decoration:underline}button{font-family:var(--font-body);cursor:pointer;background:0 0;border:none}:focus-visible{outline:2px solid var(--secondary);outline-offset:2px}.site-header{background:var(--primary);color:var(--on-primary);z-index:100;position:sticky;top:0;box-shadow:0 2px 8px #00000040}.header-inner{max-width:var(--container-max);padding:0 var(--margin-desktop);align-items:center;gap:var(--space-4);height:60px;margin:0 auto;display:flex}.header-logo{font-family:var(--font-display);color:var(--on-primary);letter-spacing:-.01em;white-space:nowrap;font-size:1.125rem;font-weight:700}.header-logo span{color:var(--secondary)}.header-nav{gap:var(--space-3);margin-left:var(--space-3);display:flex}.header-nav a{color:#fffc;transition:color var(--transition-fast);font-size:.875rem;font-weight:500}.header-nav a:hover{color:#fff;text-decoration:none}.header-cta{background:var(--secondary);color:#fff;border-radius:var(--radius-sm);transition:background var(--transition-fast);white-space:nowrap;margin-left:auto;padding:.5rem 1.25rem;font-size:.875rem;font-weight:600}.header-cta:hover{background:var(--secondary-hover);text-decoration:none}.hero{background:var(--primary);color:var(--on-primary);padding:var(--space-2) var(--margin-desktop);position:relative;overflow:hidden}.hero:before{content:"";pointer-events:none;background:radial-gradient(60% 80% at 80%,#0095f81f 0%,#0000 70%),radial-gradient(40% 60% at 10% 80%,#0095f80f 0%,#0000 60%);position:absolute;inset:0}.hero-inner{max-width:var(--container-max);margin:0 auto;position:relative}.hero h1{font-family:var(--font-display);letter-spacing:-.02em;margin-bottom:.375rem;font-size:clamp(1.5rem,3vw,2rem);font-weight:700;line-height:1.2}.hero h1 em{color:var(--secondary);font-style:normal}.hero p{color:#ffffffbf;max-width:560px;margin-bottom:var(--space-1);font-size:.875rem;line-height:1.5}.hero-stat{border-radius:var(--radius-full);color:#ffffffe6;background:#ffffff14;border:1px solid #ffffff1f;align-items:center;gap:.5rem;padding:.375rem 1rem;font-size:.875rem;font-weight:500;display:inline-flex}.hero-stat strong{color:var(--secondary);font-weight:700}.main-layout{max-width:var(--container-max);width:100%;padding:var(--space-4) var(--margin-desktop);grid-template-columns:var(--sidebar-width) 1fr;gap:var(--space-4);flex:1;align-items:start;margin:0 auto;display:grid}.filter-sidebar{top:calc(60px + var(--space-4));background:var(--surface-container-lowest);border:1px solid var(--outline-variant);border-radius:var(--radius-md);position:sticky;overflow:hidden}.filter-header{padding:var(--space-2) var(--space-2);border-bottom:1px solid var(--outline-variant);background:var(--surface-container-low);justify-content:space-between;align-items:center;display:flex}.filter-header h2{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.08em;color:var(--primary);font-size:.875rem;font-weight:700}.btn-clear{color:var(--secondary);border-radius:var(--radius-sm);transition:background var(--transition-fast);padding:.25rem .5rem;font-size:.75rem;font-weight:600}.btn-clear:hover{background:var(--surface-container)}.filter-body{padding:var(--space-2);gap:var(--space-2);flex-direction:column;display:flex}.filter-group{flex-direction:column;gap:.5rem;display:flex}.filter-label{text-transform:uppercase;letter-spacing:.08em;color:var(--on-surface-variant);font-size:.6875rem;font-weight:600}.filter-input{border:1px solid var(--outline-variant);border-radius:var(--radius-sm);width:100%;font-family:var(--font-body);color:var(--on-surface);background:var(--surface-container-lowest);transition:border-color var(--transition-fast), box-shadow var(--transition-fast);appearance:none;padding:.5rem .75rem;font-size:.875rem}.filter-input:focus{border-color:var(--secondary);outline:none;box-shadow:0 0 0 3px #0095f826}.multiselect{position:relative}.multiselect-toggle{text-align:left;cursor:pointer;justify-content:space-between;align-items:center;gap:.5rem;display:flex}.multiselect-toggle-text{text-overflow:ellipsis;white-space:nowrap;color:var(--on-surface-variant);overflow:hidden}.multiselect-toggle.has-selection .multiselect-toggle-text{color:var(--on-surface);font-weight:500}.multiselect-caret{color:var(--on-surface-variant);transition:transform var(--transition-fast);flex-shrink:0;font-size:.625rem}.multiselect-toggle[aria-expanded=true] .multiselect-caret{transform:rotate(180deg)}.multiselect-panel{z-index:30;background:var(--surface-container-lowest);border:1px solid var(--outline-variant);border-radius:var(--radius-sm);box-shadow:var(--shadow-modal);flex-direction:column;gap:.5rem;padding:.5rem;display:flex;position:absolute;top:calc(100% + 4px);left:0;right:0}.multiselect-panel[hidden]{display:none}.multiselect-search{border:1px solid var(--outline-variant);border-radius:var(--radius-sm);width:100%;font-family:var(--font-body);color:var(--on-surface);background:var(--surface-container-lowest);padding:.375rem .5rem;font-size:.8125rem}.multiselect-search:focus{border-color:var(--secondary);outline:none;box-shadow:0 0 0 3px #0095f826}.multiselect-options{flex-direction:column;gap:.125rem;max-height:240px;display:flex;overflow-y:auto}.multiselect-option{cursor:pointer;border-radius:var(--radius-sm);color:var(--on-surface);transition:background var(--transition-fast);align-items:center;gap:.5rem;padding:.3125rem .375rem;font-size:.8125rem;line-height:1.3;display:flex}.multiselect-option:hover{background:var(--surface-container)}.multiselect-option[hidden]{display:none}.multiselect-option input[type=checkbox]{width:16px;height:16px;accent-color:var(--secondary);cursor:pointer;flex-shrink:0}.checkbox-group{flex-direction:column;gap:.375rem;display:flex}.checkbox-label{cursor:pointer;color:var(--on-surface);transition:color var(--transition-fast);align-items:center;gap:.5rem;padding:.25rem 0;font-size:.8125rem;display:flex}.checkbox-label:hover{color:var(--primary)}.checkbox-label input[type=checkbox]{width:16px;height:16px;accent-color:var(--secondary);cursor:pointer;flex-shrink:0}.qualis-chips{flex-wrap:wrap;gap:.375rem;display:flex}.qualis-chip{border-radius:var(--radius-full);cursor:pointer;transition:all var(--transition-fast);border:2px solid;padding:.25rem .625rem;font-size:.75rem;font-weight:700;line-height:1}.qualis-chip[data-stratum=A1]{border-color:var(--qualis-a1);color:var(--qualis-a1)}.qualis-chip[data-stratum=A2]{border-color:var(--qualis-a2);color:var(--qualis-a2)}.qualis-chip[data-stratum=A3]{border-color:var(--qualis-a3);color:var(--qualis-a3)}.qualis-chip[data-stratum=A4]{border-color:var(--qualis-a4);color:var(--qualis-a4)}.qualis-chip[data-stratum=B1]{border-color:var(--qualis-b1);color:var(--qualis-b1)}.qualis-chip[data-stratum=B2]{border-color:var(--qualis-b2);color:var(--qualis-b2)}.qualis-chip[data-stratum=B3]{border-color:var(--qualis-b3);color:var(--qualis-b3)}.qualis-chip[data-stratum=B4]{border-color:var(--qualis-b4);color:var(--qualis-b4)}.qualis-chip[data-stratum=C]{border-color:var(--qualis-c);color:var(--qualis-c)}.qualis-chip.active{color:#fff}.qualis-chip[data-stratum=A1].active{background:var(--qualis-a1)}.qualis-chip[data-stratum=A2].active{background:var(--qualis-a2)}.qualis-chip[data-stratum=A3].active{background:var(--qualis-a3)}.qualis-chip[data-stratum=A4].active{background:var(--qualis-a4)}.qualis-chip[data-stratum=B1].active{background:var(--qualis-b1)}.qualis-chip[data-stratum=B2].active{background:var(--qualis-b2)}.qualis-chip[data-stratum=B3].active{background:var(--qualis-b3)}.qualis-chip[data-stratum=B4].active{background:var(--qualis-b4)}.qualis-chip[data-stratum=C].active{background:var(--qualis-c)}.faq-card{margin:var(--space-2);padding:var(--space-2);background:var(--primary);border-radius:var(--radius-md);color:var(--on-primary)}.faq-card h3{font-family:var(--font-display);margin-bottom:.375rem;font-size:.875rem;font-weight:700}.faq-card p{color:#ffffffb3;margin-bottom:var(--space-1);font-size:.75rem;line-height:1.5}.faq-card a{background:var(--secondary);color:#fff;border-radius:var(--radius-sm);transition:background var(--transition-fast);padding:.375rem .875rem;font-size:.75rem;font-weight:600;display:inline-block}.faq-card a:hover{background:var(--secondary-hover);text-decoration:none}.catalog-section{gap:var(--space-2);flex-direction:column;display:flex}.catalog-header{justify-content:space-between;align-items:center;gap:var(--space-1);flex-wrap:wrap;display:flex}.catalog-header h2{font-family:var(--font-display);color:var(--primary);font-size:1.25rem;font-weight:700}.catalog-meta{color:var(--on-surface-variant);font-size:.8125rem}.catalog-meta strong{color:var(--on-surface)}.per-page-select{border:1px solid var(--outline-variant);border-radius:var(--radius-sm);background:var(--surface-container-lowest);color:var(--on-surface);cursor:pointer;padding:.25rem .5rem;font-size:.8125rem}.table-wrapper{border:1px solid var(--outline-variant);border-radius:var(--radius-md);background:var(--surface-container-lowest)}.journal-table{border-collapse:collapse;width:100%;min-width:720px}.journal-table thead{z-index:10;background:var(--primary);color:var(--on-primary);position:sticky;top:60px}.journal-table th{text-align:left;font-family:var(--font-display);text-transform:uppercase;letter-spacing:.06em;white-space:nowrap;padding:.75rem 1rem;font-size:.6875rem;font-weight:700}.journal-table th:last-child{text-align:center}.journal-table thead th:first-child{border-top-left-radius:var(--radius-md)}.journal-table thead th:last-child{border-top-right-radius:var(--radius-md)}.journal-table tbody tr{border-bottom:1px solid var(--outline-variant);transition:background var(--transition-fast)}.journal-table tbody tr:last-child{border-bottom:none}.journal-table tbody tr:nth-child(2n){background:var(--surface-container-low)}.journal-table tbody tr:hover{background:var(--surface-container)}.journal-table td{vertical-align:middle;padding:.875rem 1rem;font-size:.875rem}.journal-title-cell{max-width:280px}.journal-title{color:var(--on-surface);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-bottom:.125rem;font-weight:600;line-height:1.4;display:-webkit-box;overflow:hidden}.journal-issn{color:var(--on-surface-variant);font-family:monospace;font-size:.75rem}.publisher-chip{background:var(--surface-container);border-radius:var(--radius-full);color:var(--on-surface-variant);white-space:nowrap;padding:.2rem .6rem;font-size:.75rem;font-weight:500;display:inline-block}.area-text{color:var(--on-surface-variant);-webkit-line-clamp:2;-webkit-box-orient:vertical;max-width:160px;font-size:.8125rem;line-height:1.4;display:-webkit-box;overflow:hidden}.oa-badge{border-radius:var(--radius-full);text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;align-items:center;gap:.25rem;padding:.25rem .625rem;font-size:.6875rem;font-weight:700;display:inline-flex}.oa-badge.full{color:var(--success);background:#00695c1a;border:1px solid #00695c33}.oa-badge.hybrid{color:#0061a5;background:#0061a514;border:1px solid #0061a533}.oa-badge.diamond{color:var(--qualis-a3);background:#6a1b9a14;border:1px solid #6a1b9a33}.qualis-badge{border-radius:var(--radius-sm);color:#fff;justify-content:center;align-items:center;width:40px;height:26px;font-size:.75rem;font-weight:700;display:inline-flex}.qualis-badge[data-stratum=A1]{background:var(--qualis-a1)}.qualis-badge[data-stratum=A2]{background:var(--qualis-a2)}.qualis-badge[data-stratum=A3]{background:var(--qualis-a3)}.qualis-badge[data-stratum=A4]{background:var(--qualis-a4)}.qualis-badge[data-stratum=B1]{background:var(--qualis-b1)}.qualis-badge[data-stratum=B2]{background:var(--qualis-b2)}.qualis-badge[data-stratum=B3]{background:var(--qualis-b3)}.qualis-badge[data-stratum=B4]{background:var(--qualis-b4)}.qualis-badge[data-stratum=C]{background:var(--qualis-c)}.td-actions{text-align:center}.btn-detail{color:var(--secondary);border:1.5px solid var(--secondary);border-radius:var(--radius-sm);transition:all var(--transition-fast);cursor:pointer;white-space:nowrap;background:0 0;padding:.375rem .875rem;font-size:.8125rem;font-weight:600;display:inline-block}.btn-detail:hover{background:var(--secondary);color:#fff}.table-state{padding:var(--space-6);text-align:center;color:var(--on-surface-variant)}.table-state .spinner{border:3px solid var(--outline-variant);border-top-color:var(--secondary);width:32px;height:32px;margin:0 auto var(--space-2);border-radius:50%;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.table-state p{font-size:.9375rem}.pagination{flex-wrap:wrap;justify-content:center;align-items:center;gap:.375rem;display:flex}.page-btn{border-radius:var(--radius-sm);min-width:36px;height:36px;color:var(--on-surface);border:1px solid var(--outline-variant);background:var(--surface-container-lowest);transition:all var(--transition-fast);justify-content:center;align-items:center;padding:0 .625rem;font-size:.875rem;font-weight:500;display:inline-flex}.page-btn:hover:not(:disabled){background:var(--surface-container);border-color:var(--outline)}.page-btn.active{background:var(--primary);color:var(--on-primary);border-color:var(--primary);font-weight:700}.page-btn:disabled{opacity:.4;cursor:not-allowed}.page-ellipsis{color:var(--on-surface-variant);padding:0 .25rem;line-height:36px}dialog{border-radius:var(--radius-md);box-shadow:var(--shadow-modal);border:none;width:min(700px,100vw - 32px);max-height:90vh;margin:auto;padding:0;inset:0;overflow:hidden}dialog[open]{flex-direction:column;display:flex}dialog::backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#00142899}.dialog-header{background:var(--primary);color:var(--on-primary);padding:var(--space-3);align-items:flex-start;gap:var(--space-2);display:flex}.dialog-header-content{flex:1;min-width:0}.dialog-header h2{font-family:var(--font-display);margin-bottom:.5rem;font-size:1.125rem;font-weight:700;line-height:1.3}.dialog-publisher{color:#ffffffb3;font-size:.8125rem}.dialog-close{border-radius:var(--radius-sm);color:#ffffffb3;width:32px;height:32px;transition:all var(--transition-fast);flex-shrink:0;justify-content:center;align-items:center;font-size:1.25rem;display:flex}.dialog-close:hover{color:#fff;background:#ffffff1a}.dialog-body{padding:var(--space-2) var(--space-3);gap:var(--space-2);background:var(--surface-container-lowest);flex-direction:column;display:flex;overflow-y:auto}.dialog-meta-grid{gap:.5rem var(--space-3);grid-template-columns:repeat(2,1fr);display:grid}.meta-item label{text-transform:uppercase;letter-spacing:.06em;color:var(--on-surface-variant);margin-bottom:.125rem;font-size:.6875rem;font-weight:600;display:block}.meta-item span{color:var(--on-surface);font-family:monospace;font-size:.9375rem;font-weight:500}.dialog-section-title{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.06em;color:var(--primary);border-bottom:2px solid var(--primary);margin-bottom:.5rem;padding-bottom:.375rem;font-size:.875rem;font-weight:700}.qualis-area-table{border-collapse:collapse;width:100%;font-size:.875rem}.qualis-area-table tr{border-bottom:1px solid var(--outline-variant)}.qualis-area-table tr:last-child{border-bottom:none}.qualis-area-table td{padding:.125rem 0}.qualis-area-table td:first-child{color:var(--on-surface-variant)}.qualis-area-table td:last-child{text-align:right}.qualis-area-table .qualis-badge{width:34px;height:20px;font-size:.6875rem}.dialog-footer{padding:var(--space-2) var(--space-3);border-top:1px solid var(--outline-variant);justify-content:flex-end;gap:var(--space-1);background:var(--surface-container-low);display:flex}.btn-primary{background:var(--secondary);color:#fff;border-radius:var(--radius-sm);transition:background var(--transition-fast);padding:.625rem 1.25rem;font-size:.875rem;font-weight:600}.btn-primary:hover{background:var(--secondary-hover)}.site-footer{background:var(--primary);color:#fff9;text-align:center;padding:var(--space-3);margin-top:auto;font-size:.8125rem}.site-footer a{color:#fffc}.site-footer a:hover{color:#fff}.footer-disclaimer{max-width:720px;margin:var(--space-1) auto 0;color:#ffffff73;font-size:.75rem;line-height:1.5}.footer-disclaimer strong{color:#ffffffb3}@media (max-width:900px){.main-layout{padding:var(--space-2) var(--margin-mobile);grid-template-columns:1fr}.filter-sidebar{position:static}.header-inner{padding:0 var(--margin-mobile)}.hero{padding:var(--space-4) var(--margin-mobile)}.dialog-meta-grid{grid-template-columns:1fr}}@media (max-width:600px){.header-nav{display:none}.journal-table{min-width:600px}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.journal-table tbody tr{animation:.2s both fadeInUp}.journal-table tbody tr:first-child{animation-delay:10ms}.journal-table tbody tr:nth-child(2){animation-delay:20ms}.journal-table tbody tr:nth-child(3){animation-delay:30ms}.journal-table tbody tr:nth-child(4){animation-delay:40ms}.journal-table tbody tr:nth-child(5){animation-delay:50ms}.journal-table tbody tr:nth-child(6){animation-delay:60ms}.journal-table tbody tr:nth-child(7){animation-delay:70ms}.journal-table tbody tr:nth-child(8){animation-delay:80ms}.journal-table tbody tr:nth-child(9){animation-delay:90ms}.journal-table tbody tr:nth-child(10){animation-delay:.1s}
