:root{
--primary:#b76a70;--primary-dark:#96555a;--primary-soft:rgba(183,106,112,.1);
--secondary:#6C757D;--success:#1e7e34;--info:#0e7490;--warning:#b45309;--danger:#dc3545;
--light:#F8F9FA;--dark:#343A40;--radius:12px;
--shadow-sm:0 1px 2px rgba(16,24,40,.06);
--font-stack:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
}
html{scroll-behavior:smooth}
body{font-family:var(--font-stack);text-wrap:pretty;-webkit-font-smoothing:antialiased}
img,video{max-width:100%}
.skip-link{position:absolute;left:-9999px;top:0;background:#fff;color:#000;padding:.5rem 1rem;z-index:2000;border-radius:0 0 8px 0}
.skip-link:focus{left:0}
#wrapper{display:flex;width:100%;min-height:100vh;min-height:100dvh}
#sidebar-wrapper{width:260px;min-height:100vh;min-height:100dvh;position:sticky;top:0;height:100vh;height:100dvh;display:flex;flex-direction:column;z-index:1040}
#sidebar-wrapper nav{overflow-y:auto;flex:1}
#page-content-wrapper{width:100%;min-width:0}
.sidebar-backdrop{display:none}
.list-group-item{border:0;padding:.7rem 1.25rem;color:#495057;border-radius:0 10px 10px 0;margin-right:.5rem}
.list-group-item:hover{background:var(--primary-soft);color:var(--primary-dark)}
.list-group-item.active{background:linear-gradient(135deg,#b76a70,#d99aa0)!important;color:#fff!important;font-weight:600;box-shadow:var(--shadow-sm)}
.list-group-item i{width:20px;text-align:center}
.navbar{padding:.6rem 1rem}
#menu-toggle{display:none}
.breadcrumb a{color:var(--primary-dark)}
.card{border-radius:var(--radius);border:1px solid rgba(16,24,40,.07);box-shadow:var(--shadow-sm);content-visibility:auto;contain-intrinsic-size:auto 220px}
.card:has(.modal){content-visibility:visible}
.card-header{background:#fff;border-bottom:1px solid rgba(16,24,40,.06);padding:.9rem 1.25rem}
.card-body{padding:1.25rem}
.table>:not(caption)>*>*{padding:.7rem .9rem;vertical-align:middle}
.table-hover>tbody>tr:hover>*{background:rgba(183,106,112,.05)}
.form-control,.form-select{border-radius:10px;padding:.6rem .9rem}
.form-control:focus,.form-select:focus{border-color:var(--primary);box-shadow:0 0 0 3px rgba(183,106,112,.22)}
.btn{border-radius:10px;font-weight:500}
.btn-primary{background:var(--primary);border-color:var(--primary)}
.btn-primary:hover,.btn-primary:focus{background:var(--primary-dark);border-color:var(--primary-dark)}
.btn-outline-primary{color:var(--primary-dark);border-color:var(--primary)}
.btn-outline-primary:hover{background:var(--primary);border-color:var(--primary)}
.gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.75rem}
.gallery-item{position:relative;border-radius:12px;overflow:hidden;background:#eef1f4;aspect-ratio:1;contain:content;cursor:pointer;border:1px solid rgba(16,24,40,.07)}
.gallery-item img{width:100%;height:100%;object-fit:cover;display:block;background:#eef1f4}
.gallery-item .meta{position:absolute;inset:auto 0 0 0;padding:.4rem .5rem;background:linear-gradient(transparent,rgba(0,0,0,.72));color:#fff;font-size:.72rem;line-height:1.25}
.gallery-item .pick{position:absolute;top:.45rem;left:.45rem;width:26px;height:26px;border-radius:8px;background:rgba(255,255,255,.95);display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-sm)}
.gallery-item.selected{outline:3px solid var(--primary);outline-offset:-1px}
.gallery-item .badge-top{position:absolute;top:.45rem;right:.45rem}
.media-thumb{aspect-ratio:1;overflow:hidden;border-radius:10px;background:#eef1f4;contain:content}
.media-thumb img,.media-thumb video{width:100%;height:100%;object-fit:cover;display:block}
@media (hover:hover){.media-thumb img{transition:transform .25s ease}.media-thumb:hover img{transform:scale(1.04)}}
.toolbar-sticky{position:sticky;top:58px;z-index:1020;background:rgba(248,249,250,.92);backdrop-filter:blur(8px);border-radius:12px}
.hover-lift{transition:transform .15s ease,box-shadow .15s ease}
@media (hover:hover){.hover-lift:hover{transform:translateY(-2px);box-shadow:0 .5rem 1rem rgba(16,24,40,.12)!important}}
.skeleton{position:relative;overflow:hidden;background:#e9ecef;border-radius:8px;min-height:120px}
.skeleton::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.7),transparent);animation:shimmer 1.2s infinite}
@keyframes shimmer{from{transform:translateX(-100%)}to{transform:translateX(100%)}}
.animate-in{animation:fadeIn .25s ease-out}
@keyframes fadeIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.dropdown-menu{border:1px solid rgba(16,24,40,.1);border-radius:12px;box-shadow:0 8px 24px rgba(16,24,40,.12)}
.pagination .page-link{color:var(--primary-dark);border-radius:8px;margin:0 2px}
.pagination .page-item.active .page-link{background:var(--primary);border-color:var(--primary)}
.alert{border-radius:12px}
.modal-content{border-radius:16px;border:0}
:focus-visible{outline:2px solid var(--primary);outline-offset:2px}
::selection{background:rgba(183,106,112,.28)}
@media (max-width:991.98px){
#sidebar-wrapper{position:fixed;top:0;left:0;height:100vh;height:100dvh;transform:translateX(-105%);transition:transform .25s ease;box-shadow:8px 0 24px rgba(0,0,0,.14)}
#sidebar-wrapper.show{transform:none}
.sidebar-backdrop.show{display:block;position:fixed;inset:0;background:rgba(0,0,0,.4);z-index:1035}
#menu-toggle{display:inline-flex;align-items:center}
.toolbar-sticky{top:56px}
}
@media (max-width:767.98px){
.card-body{padding:1rem}
.gallery{grid-template-columns:repeat(3,1fr);gap:.5rem}
.display-6{font-size:1.6rem}
.table-responsive{font-size:.85rem}
}
@media (prefers-reduced-motion:reduce){
*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
}
@media print{
.navbar,#sidebar-wrapper,.sidebar-backdrop,.btn,.pagination,.dropdown,.toolbar-sticky,footer{display:none!important}
.card{box-shadow:none!important;content-visibility:visible}
}
