:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light;color:#213547;background-color:#fff;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#003a5d;text-decoration:inherit}a:hover{color:#002a45}body{margin:0;padding:0;min-width:320px;min-height:100vh;width:100%}#root{width:100%}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#f9f9f9;cursor:pointer;transition:border-color .25s}button:hover{border-color:#003a5d}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}.app{min-height:100vh;display:flex;flex-direction:column;margin:0;padding:0;width:100%}.header{background-color:#003a5d;color:#fff;padding:2rem;box-shadow:0 2px 4px #0000001a;width:100%;box-sizing:border-box}.header-content{display:flex;align-items:center;justify-content:flex-start;gap:1.5rem;width:100%;position:relative}.logo{position:absolute;left:0}.logo-image{height:90px;width:auto}.title{margin:0;font-size:2rem;font-weight:500;letter-spacing:.5px;flex:1;text-align:center}.main-content{flex:1;width:100%;box-sizing:border-box}@media (max-width: 768px){.header{padding:.75rem 1rem}.header-content{gap:.75rem}.title{font-size:1.25rem}.logo-image{height:32px;width:32px}}@media (max-width: 480px){.header{padding:.5rem .75rem}.title{font-size:1.1rem}.logo-image{height:28px;width:28px}}.catalog-container{padding:2rem;width:100%;box-sizing:border-box}.search-container{display:flex;gap:.75rem;margin-bottom:1.5rem;flex-wrap:wrap;align-items:center}.search-input{flex:1;min-width:300px;padding:.75rem 1rem;border:2px solid #d1d5db;border-radius:8px;font-size:1rem;transition:border-color .2s}.search-input:focus{outline:none;border-color:#003a5d;box-shadow:0 0 0 3px #003a5d1a}.search-button,.clear-button{padding:.75rem 1.5rem;border:none;border-radius:8px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s}.search-button{background-color:#003a5d;color:#fff}.search-button:hover{background-color:#002a45}.clear-button{background-color:#6b7280;color:#fff}.clear-button:hover{background-color:#4b5563}.filters-container{margin-bottom:2rem;padding:1rem;background-color:#f9fafb;border-radius:8px;border:1px solid #e5e7eb}.filters-row{display:flex;flex-wrap:wrap;align-items:flex-end;gap:1rem}.filter-group{display:flex;flex-direction:column;gap:.35rem;min-width:160px}.filter-label{font-weight:600;margin-right:0;font-size:.78rem;text-transform:uppercase;letter-spacing:.04em;color:#374151}.filter-select{height:40px;padding:.55rem .75rem;border:1px solid #d1d5db;border-radius:8px;font-size:.95rem;background-color:#fff;margin-right:0;margin-bottom:0}.filter-select:focus{outline:none;border-color:#003a5d;box-shadow:0 0 0 3px #003a5d1a}.sort-controls{min-width:260px;flex:1}.sort-group{display:flex;flex-wrap:wrap;gap:.5rem}.sort-pill{border:1px solid #cbd5e1;background-color:#fff;color:#1f2937;border-radius:999px;padding:.45rem .9rem;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s ease}.sort-pill:hover{border-color:#003a5d;color:#003a5d}.sort-pill.active{background-color:#003a5d;border-color:#003a5d;color:#fff;box-shadow:0 2px 8px #003a5d33}.results-summary{margin:0 0 .75rem;padding:0;font-size:.9rem;color:#6b7280}.results-summary strong{color:#003a5d;font-weight:600}.loading-message,.error-message,.no-results{text-align:center;padding:2rem;font-size:1.1rem}.error-message{color:#dc2626;background-color:#fef2f2;border:1px solid #fecaca;border-radius:8px}.loading-message{color:#003a5d}.no-results{color:#6b7280}.publications-list{display:flex;flex-direction:column;gap:1rem}.publication-item{border:1px solid #e5e7eb;border-radius:12px;overflow:hidden;background-color:#fff;box-shadow:0 1px 3px #0000001a;transition:all .2s}.publication-item:hover{box-shadow:0 4px 12px #00000026;border-color:#003a5d;background-color:#ebf8ff}.basic-info{padding:1.5rem;cursor:pointer;display:flex;flex-direction:column;gap:.5rem;position:relative}.publication-title{margin:0;color:#111827;font-size:1.25rem;font-weight:600;line-height:1.4}.basic-info p{margin:.25rem 0;color:#4b5563;font-size:.95rem}.basic-info strong{color:#374151;font-weight:600}.direct-link-container{margin-top:.75rem}.direct-link{display:inline-flex;align-items:center;padding:.5rem 1rem;background-color:#003a5d;color:#fff;text-decoration:none;border-radius:6px;font-size:.9rem;font-weight:500;transition:background-color .2s}.direct-link:hover{background-color:#002a45;color:#fff}.expanded-content{border-top:1px solid #e5e7eb;padding:1.5rem;background-color:#fafafa;display:flex;gap:1.5rem;flex-wrap:wrap}.expanded-details{flex:1;min-width:300px}.expanded-details p{margin:.75rem 0;color:#4b5563;font-size:.95rem;line-height:1.5}.expanded-details strong{color:#374151;font-weight:600}@media (max-width: 768px){.catalog-container{padding:1rem}.search-container{flex-direction:column;align-items:stretch}.search-input{min-width:unset;width:100%}.search-button,.clear-button{width:100%}.filters-container{padding:.75rem}.filters-row{align-items:stretch;gap:.75rem}.filter-group,.sort-controls{width:100%;min-width:0}.sort-group{width:100%}.sort-pill{flex:1;min-width:92px}.basic-info{padding:1rem}.publication-title{margin-right:0;font-size:1.1rem}.expanded-content{flex-direction:column;padding:1rem}}@media (max-width: 480px){.catalog-container{padding:.5rem}.publication-title{font-size:1rem}.basic-info p{font-size:.9rem}}
