.media-hero{background:linear-gradient(135deg,#ffffff 0%,#f7faff 45%,rgba(17,61,88,.08) 100%);border-radius:18px;padding:22px 24px;box-shadow:0 14px 35px rgba(20,38,64,.06);}
.media-hero h1{font-weight:800;letter-spacing:-.4px;color:#17233c;margin-bottom:4px}.media-stat-row{margin-top:18px}.media-stat-card{position:relative;overflow:hidden;border:0;border-radius:20px;background:#fff;padding:22px;min-height:112px;box-shadow:0 16px 35px rgba(31,45,61,.08);margin-bottom:18px}.media-stat-card span{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#8a94a6}.media-stat-card strong{display:block;font-size:29px;color:#162033;line-height:1.2;margin-top:6px}.media-stat-card i{position:absolute;right:18px;bottom:14px;font-size:44px;color:rgba(17,61,88,.09)}.media-control-card{border:0;border-radius:20px;box-shadow:0 16px 35px rgba(31,45,61,.08)}.media-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:18px;margin-top:18px}.media-card{position:relative;background:#fff;border-radius:22px;overflow:hidden;box-shadow:0 16px 35px rgba(31,45,61,.1);border:1px solid rgba(230,235,245,.9);transition:.2s ease}.media-card:hover{transform:translateY(-3px);box-shadow:0 22px 45px rgba(31,45,61,.14)}.media-card-preview{height:172px;background:#f5f7fb;display:flex;align-items:center;justify-content:center;position:relative}.media-card-preview img{width:100%;height:100%;object-fit:cover}.media-card-preview .media-file-icon{font-size:42px;color:#98a2b3}.media-card-body{padding:14px}.media-title{font-weight:800;color:#1d2939;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.media-meta{font-size:12px;color:#667085;margin-top:4px}.media-badge{position:absolute;left:12px;top:12px;border-radius:999px;padding:5px 9px;font-size:11px;font-weight:800;background:rgba(255,255,255,.92);box-shadow:0 6px 18px rgba(0,0,0,.12)}.media-badge.used{color:#087443}.media-badge.unused{color:#b54708}.media-actions{display:flex;gap:7px;margin-top:12px}.media-actions .btn{border-radius:12px}.media-picker-modal .modal-dialog{max-width:1080px}.media-picker-shell{display:grid;grid-template-columns:280px 1fr;gap:18px}.media-dropzone{border:2px dashed #d0d5dd;border-radius:20px;padding:24px;text-align:center;background:#f9fafb;cursor:pointer}.media-dropzone:hover{border-color:var(--theme-color);background:#f4f9ff}.media-picker-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:13px;max-height:620px;overflow:auto;padding:3px}.media-picker-item{border-radius:17px;border:2px solid transparent;background:#fff;box-shadow:0 8px 22px rgba(31,45,61,.08);overflow:hidden;cursor:pointer}.media-picker-item:hover,.media-picker-item.selected{border-color:var(--theme-color)}.media-picker-item img{width:100%;height:110px;object-fit:cover;background:#f2f4f7}.media-picker-item div{font-size:12px;font-weight:700;padding:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.media-selected-preview{border-radius:14px;overflow:hidden;margin-top:10px;border:1px solid #eaecf0;display:none}.media-selected-preview img{width:100%;max-height:160px;object-fit:cover}.dvc-media-inline{display:flex;gap:8px;align-items:center;margin-top:8px}.dvc-media-inline .btn{border-radius:10px}.premium-scroll::-webkit-scrollbar{height:8px;width:8px}.premium-scroll::-webkit-scrollbar-thumb{background:#d0d5dd;border-radius:999px}

/* Native file input overlay for picker uploads. This avoids blocked programmatic
   file dialogs when the picker is opened on top of another Bootstrap modal. */
.media-dropzone{position:relative;display:block;}
.media-dropzone .dvc-picker-file-input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer;z-index:2;}
.media-dropzone > i,.media-dropzone > h6,.media-dropzone > p{position:relative;z-index:1;pointer-events:none;}
.media-picker-modal{z-index:1065;}
.modal-backdrop.show + .modal-backdrop.show{z-index:1060;}
