.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.page-title{font-size:1.5rem;font-weight:700;display:flex;align-items:center;gap:.75rem}.search-container{margin-bottom:2rem;position:relative;width:100%;max-width:500px;display:flex;gap:.5rem}#resourceSearch{width:100%;box-sizing:border-box;padding:.75rem 1rem .75rem 2.5rem;font-size:.95rem;border:1px solid var(--border-color);background:var(--bg-card);border-radius:99px;box-shadow:0 1px 2px var(--shadow-color);color:var(--text-main);transition:border-color .2s}#resourceSearch:focus{outline:none;border-color:var(--accent)}.search-icon{position:absolute;left:1rem;top:50%;transform:translateY(-50%);color:var(--text-muted);pointer-events:none;display:flex}.controls-header{display:grid;grid-template-columns:calc(120px + 1rem) 1fr 120px 120px 30px;gap:1rem;padding:.5rem 1rem .5rem 0;border-bottom:2px solid var(--border-color);margin-bottom:1rem;align-items:center;font-size:.9rem;color:var(--text-muted);font-weight:600}.cat-filter-dropdown{position:relative;overflow:visible;z-index:101}.cat-filter-btn{list-style:none;width:100%;padding:.4rem .5rem;background:var(--bg-card);border:1px solid var(--border-color);border-radius:6px;text-align:left;cursor:pointer;display:flex;justify-content:space-between;align-items:center;font-size:.85rem;font-weight:600;color:var(--text-muted)}.cat-filter-btn::-webkit-details-marker{display:none}.cat-filter-btn:hover{border-color:var(--accent);color:var(--text-main)}.cat-filter-content{position:absolute;top:100%;left:0;width:200px;max-height:300px;overflow-y:auto;background:var(--bg-card);border:1px solid var(--border-color);border-radius:8px;box-shadow:0 4px 12px #00000040;padding:.5rem;margin-top:5px;z-index:200}.cat-filter-item{display:block;width:100%;text-align:left;padding:.5rem;cursor:pointer;font-size:.9rem;border-radius:4px;color:var(--text-main);background:none;border:none}.cat-filter-item:hover{background:var(--bg-hover)}.filter-select{padding:.4rem;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-card);color:var(--text-main);font-size:.85rem;cursor:pointer;width:auto}.sort-btn{background:none;border:none;font-size:.9rem;color:var(--text-muted);cursor:pointer;display:flex;align-items:center;gap:.25rem;padding:0;font-weight:600;justify-content:flex-start}.sort-btn:hover{color:var(--text-main)}.sort-btn.active{color:var(--accent)}.sort-icon{transition:transform .2s ease-in-out;opacity:0;display:inline-block}.sort-btn.active .sort-icon{opacity:1}.sort-btn.asc .sort-icon{transform:rotate(180deg)}.resource-list{display:flex;flex-direction:column;gap:.5rem}.resource-card{display:grid;grid-template-columns:120px 1fr 120px 120px 30px;gap:1rem;align-items:center;padding:.5rem 1rem;background:var(--bg-card);border:1px solid var(--border-color);border-radius:8px;transition:all .2s ease;text-decoration:none;color:inherit;position:relative}.resource-card:hover{background:var(--bg-hover);border-color:var(--accent)}.resource-card.menu-active{z-index:100;border:2px solid var(--color-medical-green)!important}.col-cat{display:flex;align-items:center}.cat-badge{font-size:.75rem;background:var(--bg-body);padding:.2rem .6rem;border-radius:4px;color:var(--text-muted);white-space:nowrap;font-weight:500;border:1px solid var(--border-color)}.col-title{font-weight:500;color:var(--text-main);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer}.col-title:hover{color:var(--accent)}.col-date,.col-author{font-size:.85rem;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:flex;align-items:center}.col-menu{display:flex;justify-content:center;align-items:center;position:relative}.menu-btn{background:none;border:none;color:var(--text-main);cursor:pointer;padding:.2rem;border-radius:50%}.menu-btn:hover{color:var(--text-main);background:var(--bg-body)}.dropdown-menu{position:absolute;right:.5rem;top:30px;background:var(--bg-card);border:1px solid var(--border-color);border-radius:6px;box-shadow:0 4px 12px #00000026;z-index:1000;display:none;flex-direction:column;min-width:130px}.dropdown-menu.active{display:flex!important;z-index:9999;background-color:var(--bg-card);box-shadow:0 4px 20px #00000080;border:2px solid blue!important}.dropdown-item{padding:.6rem 1rem;font-size:.9rem;color:var(--text-main);text-decoration:none;display:flex;align-items:center;gap:.5rem;cursor:pointer;border:none;background:none;text-align:left;width:100%}.dropdown-item:hover{background:var(--bg-hover)}.dropdown-item.delete{color:#ef4444}@media(max-width:768px){.controls-header{display:flex;flex-wrap:wrap;justify-content:space-between;gap:0;grid-template-columns:none;margin-bottom:1rem;padding:.5rem 0;border-bottom:1px solid var(--border-color)}.controls-header .header-item:nth-child(1),.controls-header .header-item:nth-child(3),.controls-header .header-item:nth-child(4){margin:0}.controls-header .header-item:last-child{display:none}.header-item{flex:0 0 auto}.filter-select{width:auto;min-width:auto}.resource-card{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:center;gap:.5rem;padding:.5rem}.col-cat{flex-shrink:0}.cat-badge{padding:.15rem .4rem;font-size:.7rem}.col-title{flex:1;min-width:0;font-size:.9rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.col-date,.col-author{flex-shrink:0;font-size:.75rem;color:var(--text-muted);white-space:nowrap}.col-menu{flex-shrink:0;margin-left:auto;display:flex!important}.dropdown-menu{right:.5rem}}.modal-overlay{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;z-index:1000;justify-content:center;align-items:center}.modal-overlay.active{display:flex}.modal-content{background:var(--bg-card);padding:2rem;border-radius:12px;width:90%;max-width:500px;box-shadow:0 4px 6px #0000001a}.modal-header{margin-bottom:1.5rem;font-size:1.2rem;font-weight:700;color:var(--text-main)}.form-group{margin-bottom:1rem}.form-label{display:block;margin-bottom:.5rem;font-size:.9rem;color:var(--text-main);font-weight:500}.form-input{width:100%;padding:.6rem;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-body);color:var(--text-main);box-sizing:border-box}.form-actions{display:flex;justify-content:flex-end;gap:.5rem;margin-top:2rem}.btn{padding:.6rem 1.2rem;border-radius:6px;border:none;cursor:pointer;font-weight:500;font-size:.9rem}.btn-cancel{background:transparent;color:var(--text-muted);border:1px solid var(--border-color)}.btn-submit{background:var(--accent);color:#fff}
