.admin-shell{display:flex;min-height:100vh}.admin-sidebar{width:220px;flex-shrink:0;background:var(--ov-navy);display:flex;flex-direction:column;position:-webkit-sticky;position:sticky;top:0;height:100vh;overflow-y:auto}.admin-sidebar-header{padding:var(--ov-space-5) var(--ov-space-4);border-bottom:1px solid hsla(0,0%,100%,.08)}.admin-sidebar-brand{display:flex;align-items:center;gap:var(--ov-space-2);font-family:var(--ov-font-sans);font-size:var(--ov-fs-sm);font-weight:var(--ov-w-bold);color:#fff;text-decoration:none;letter-spacing:.02em}.admin-sidebar-nav{flex:1 1;display:flex;flex-direction:column;padding:var(--ov-space-3) var(--ov-space-2);gap:2px}.admin-sidebar-link{display:flex;align-items:center;padding:var(--ov-space-2) var(--ov-space-3);border-radius:var(--ov-radius-md);font-family:var(--ov-font-sans);font-size:var(--ov-fs-sm);font-weight:var(--ov-w-medium);color:hsla(0,0%,100%,.7);text-decoration:none;transition:background var(--ov-dur-fast) var(--ov-ease),color var(--ov-dur-fast) var(--ov-ease);min-height:40px;cursor:pointer}.admin-sidebar-link:hover{background:hsla(0,0%,100%,.1);color:#fff;text-decoration:none}.admin-sidebar-link--muted{color:hsla(0,0%,100%,.4);font-size:var(--ov-fs-xs)}.admin-sidebar-footer{padding:var(--ov-space-3) var(--ov-space-2);border-top:1px solid hsla(0,0%,100%,.08)}.admin-main{flex:1 1;min-width:0;overflow-x:hidden}.admin-user-list{display:flex;flex-direction:column;gap:var(--ov-space-3)}.admin-user-card{display:flex;align-items:center;gap:var(--ov-space-4);padding:var(--ov-space-4) var(--ov-space-5);background:var(--ov-white);border:1px solid var(--ov-line);border-radius:var(--ov-radius-lg);flex-wrap:wrap}.admin-user-avatar{width:40px;height:40px;border-radius:50%;background:var(--ov-navy);color:#fff;display:flex;align-items:center;justify-content:center;font-family:var(--ov-font-sans);font-size:16px;font-weight:var(--ov-w-bold);flex-shrink:0}.admin-user-info{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:2px}.admin-user-name{font-size:var(--ov-fs-sm);font-weight:var(--ov-w-semibold);color:var(--ov-navy)}.admin-user-email,.admin-user-name{font-family:var(--ov-font-sans);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-user-email{font-size:var(--ov-fs-xs);color:var(--ov-slate)}.admin-user-meta{font-family:var(--ov-font-sans);font-size:11px;color:var(--ov-slate)}.admin-user-actions{display:flex;align-items:center;gap:var(--ov-space-3);flex-shrink:0}.admin-page{min-height:100vh;background:var(--ov-cloud);padding:var(--ov-space-10) var(--ov-space-6) var(--ov-space-12)}.admin-container{max-width:1000px;margin:0 auto}.admin-title{font-family:var(--ov-font-display);font-size:var(--ov-fs-h1);font-weight:var(--ov-w-extrabold);color:var(--ov-navy);margin:0 0 var(--ov-space-2)}.admin-subtitle{font-family:var(--ov-font-sans);font-size:var(--ov-fs-sm);color:var(--ov-slate);margin:0 0 var(--ov-space-8)}.admin-tabs{display:flex;gap:var(--ov-space-2);margin-bottom:var(--ov-space-6);border-bottom:2px solid var(--ov-line)}.admin-tab{padding:var(--ov-space-2) var(--ov-space-5);font-family:var(--ov-font-sans);font-size:var(--ov-fs-sm);font-weight:var(--ov-w-semibold);color:var(--ov-slate);text-decoration:none;border-bottom:2px solid transparent;margin-bottom:-2px;transition:color .15s,border-color .15s}.admin-tab:hover{color:var(--ov-navy)}.admin-tab.active{color:var(--ov-blue);border-bottom-color:var(--ov-blue)}.admin-stats{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));grid-gap:var(--ov-space-4);gap:var(--ov-space-4);margin-bottom:var(--ov-space-8)}.admin-stat-card{background:var(--ov-white);border:1px solid var(--ov-line);border-radius:var(--ov-radius-lg);padding:var(--ov-space-5)}.admin-stat-num{font-family:var(--ov-font-display);font-size:var(--ov-fs-h2);font-weight:var(--ov-w-extrabold);color:var(--ov-navy);margin:0 0 var(--ov-space-1)}.admin-stat-label{font-family:var(--ov-font-sans);font-size:var(--ov-fs-xs);color:var(--ov-slate)}.mod-list{display:flex;flex-direction:column;gap:var(--ov-space-4)}.mod-card{background:var(--ov-white);border:1px solid var(--ov-line);border-radius:var(--ov-radius-lg);padding:var(--ov-space-5)}.mod-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--ov-space-4);margin-bottom:var(--ov-space-3)}.mod-card-title{font-size:var(--ov-fs-sm);font-weight:var(--ov-w-semibold);color:var(--ov-navy)}.mod-card-meta,.mod-card-title{font-family:var(--ov-font-sans)}.mod-card-meta{font-size:var(--ov-fs-xs);color:var(--ov-slate);margin-bottom:var(--ov-space-3)}.mod-card-desc{font-family:var(--ov-font-sans);font-size:var(--ov-fs-sm);color:var(--ov-steel);line-height:1.5;margin-bottom:var(--ov-space-4);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.mod-actions{display:flex;gap:var(--ov-space-2);flex-wrap:wrap;align-items:center}.mod-btn{padding:var(--ov-space-2) var(--ov-space-4);border-radius:var(--ov-radius-md);font-family:var(--ov-font-sans);font-size:var(--ov-fs-xs);font-weight:var(--ov-w-semibold);cursor:pointer;border:1.5px solid transparent;transition:opacity .15s}.mod-btn:disabled{opacity:.4;cursor:default}.mod-btn:not(:disabled):hover{opacity:.85}.mod-btn-approve{background:var(--ov-free-bg);color:var(--ov-free-fg);border-color:var(--ov-free-border)}.mod-btn-reject{background:var(--ov-banned-bg);color:var(--ov-banned-fg);border-color:var(--ov-banned-border)}.mod-btn-revision{background:var(--ov-cond-bg);color:var(--ov-cond-fg);border-color:var(--ov-cond-border)}.mod-note-input{flex:1 1;min-width:160px;padding:var(--ov-space-2) var(--ov-space-3);border:1.5px solid var(--ov-line);border-radius:var(--ov-radius-md);font-family:var(--ov-font-sans);font-size:var(--ov-fs-xs);color:var(--ov-navy);outline:none}.mod-note-input:focus{border-color:var(--ov-blue)}.mod-status-badge{padding:2px 8px;border-radius:var(--ov-radius-full);font-family:var(--ov-font-sans);font-size:10px;font-weight:var(--ov-w-bold);flex-shrink:0}.mod-status-badge.PENDING{background:var(--ov-cond-bg);color:var(--ov-cond-fg)}.mod-status-badge.APPROVED{background:var(--ov-free-bg);color:var(--ov-free-fg)}.mod-status-badge.REJECTED{background:var(--ov-banned-bg);color:var(--ov-banned-fg)}.mod-status-badge.REVISION{background:var(--ov-cond-bg);color:var(--ov-cond-fg)}.admin-empty{text-align:center;padding:var(--ov-space-12);font-family:var(--ov-font-sans);font-size:var(--ov-fs-sm);color:var(--ov-slate);background:var(--ov-white);border:1px solid var(--ov-line);border-radius:var(--ov-radius-lg)}