:root{--navy:#102337;--navy2:#1d3750;--gold:#ba8f52;--light:#f4f6f8;--border:#dae1e7;--ink:#1e303f;--muted:#627384}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:var(--light);font:14px/1.55 system-ui,-apple-system,Segoe UI,Arial,sans-serif}a{color:#255a79;text-decoration:none}a:hover{text-decoration:underline}.shell{min-height:100vh;display:flex}.aside{width:246px;flex-shrink:0;background:var(--navy);color:#fff;padding:24px 15px;display:flex;flex-direction:column}.brand{display:flex;gap:12px;align-items:center;padding:7px 10px 36px;color:#fff}.brand b{font-family:Georgia,serif;font-size:17px}.brand small{display:block;font-size:11px;letter-spacing:2px;text-transform:uppercase;color:#a5bed0}.monogram{width:39px;height:39px;display:grid;place-items:center;background:var(--gold);color:#fff;border-radius:4px;font-weight:bold}.aside-caption,.overline{font-size:10px;font-weight:800;letter-spacing:2px;color:var(--gold)}.aside-caption{padding:0 14px 10px}.aside nav a,.aside-bottom a{display:block;color:#b8c6d3;padding:11px 15px;border-radius:5px;margin-bottom:3px}.aside nav a:hover,.aside nav a.active{color:white;background:var(--navy2);text-decoration:none}.aside nav a.active{border-left:3px solid var(--gold)}.aside-bottom{margin-top:auto;border-top:1px solid #314357;padding-top:15px}.content{min-width:0;flex:1;display:flex;flex-direction:column}.topbar{height:64px;padding:0 38px;border-bottom:1px solid var(--border);background:#fff;display:flex;align-items:center;justify-content:space-between;font-size:11px;letter-spacing:1px;font-weight:700;color:#728391}.topbar em{display:block;font-style:normal;letter-spacing:0;text-align:right;color:var(--gold)}main{padding:34px 38px 80px;max-width:1500px;width:100%;margin:auto;flex:1}.heading{display:flex;align-items:end;justify-content:space-between;margin-bottom:26px}.heading h1{font:normal 34px/1.2 Georgia,serif;margin:7px 0 0}.overline{margin:0}.date,.muted{color:var(--muted)}.grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin-bottom:24px}.card,.panel{background:#fff;border:1px solid var(--border);border-radius:7px;padding:23px}.card span{display:block;color:#627384;font-size:12px}.card strong{font-size:32px;display:block;font-weight:700;margin-top:6px}.panel{margin-bottom:20px;overflow-x:auto}.panel h2{font:normal 23px Georgia,serif;margin:0 0 17px}.section-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:15px}.section-head h2{margin:0}.filters{display:flex;gap:10px;align-items:end;flex-wrap:wrap;margin-bottom:17px}.filter{display:grid;gap:5px}.filter label,form label{font-size:12px;color:#526478;font-weight:650}.field,textarea,select,input[type=date],input[type=number],input[type=email],input[type=password],input[type=text]{border:1px solid #cad5dd;background:#fff;border-radius:5px;padding:10px 11px;font:inherit;max-width:100%;width:100%}input:focus,textarea:focus,select:focus{outline:2px solid #c6ddea}.filters .field{min-width:230px}textarea{min-height:98px;resize:vertical}.btn{border:0;border-radius:5px;padding:10px 16px;background:var(--navy);color:white;font:inherit;font-weight:650;cursor:pointer;display:inline-block}.btn:hover{background:var(--navy2);text-decoration:none;color:#fff}.btn.secondary{background:#eef2f6;color:#254158}.btn.danger{background:#aa3b3b}.btn.small{font-size:12px;padding:7px 10px}table{border-collapse:collapse;width:100%;min-width:700px}th,td{text-align:left;border-bottom:1px solid #e7edf2;padding:13px 12px;vertical-align:top}th{font-size:11px;letter-spacing:.7px;text-transform:uppercase;color:#6b7c8b;background:#fafbfd}tr:hover td{background:#fbfcfd}.pill{display:inline-block;font-size:11px;padding:3px 8px;border-radius:25px;background:#ecf1f5;color:#3e586b;white-space:nowrap}.pill.published,.pill.accepted,.pill.active{background:#e1f4e8;color:#216239}.pill.rejected,.pill.suspended{background:#fce7e7;color:#9b3535}.two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.three{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.formgrid{display:grid;gap:14px}.formgrid>label{display:grid;gap:6px}.notice{margin-bottom:18px;padding:12px 17px;border-left:4px solid #558f69;background:#e7f5ea}.notice.error{background:#ffebeb;border-color:#c45e5e}.foot{padding:16px 40px;border-top:1px solid var(--border);color:#7d8b97;font-size:11px}.subtitle{color:#667b87;margin-top:-9px}.actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.actions form{display:inline}.note{border-left:3px solid var(--gold);padding:10px 14px;background:#fbf9f5;color:#625c53}.login-page{min-height:100vh;display:grid;place-items:center;padding:30px;background:var(--navy)}.login-card{background:white;width:min(430px,100%);padding:35px;border-radius:7px}.login-card h1{font:normal 32px Georgia,serif}.login-card p{color:#627384}.login-card .formgrid{margin-bottom:18px}code{white-space:normal;word-break:break-word}@media(max-width:990px){.grid{grid-template-columns:repeat(2,1fr)}.aside{width:210px}.topbar{padding:0 20px}main{padding:28px 20px}}@media(max-width:690px){.shell{display:block}.aside{width:100%;padding:12px}.brand{padding:4px 7px 10px}.aside-caption{display:none}.aside nav{display:flex;overflow:auto}.aside nav a{white-space:nowrap;font-size:12px}.aside-bottom{display:none}.topbar{height:auto;padding:12px}.heading h1{font-size:28px}.date{display:none}.grid,.two,.three{grid-template-columns:1fr}main{padding:20px 12px}}

/* Enterprise refinement */
:root{--navy:#10293a;--navy2:#1c4158;--gold:#bb8a53;--border:#dce4e8;--light:#f5f7f8}body{line-height:1.6}.aside{width:255px}.brand{align-items:center}.aside nav a{font-size:13px}.topbar{box-shadow:0 1px 8px rgba(17,46,60,.03)}.card,.panel,.login-card{border-radius:13px;box-shadow:0 8px 29px rgba(18,48,67,.035)}.panel{padding:26px}.card{position:relative;overflow:hidden}.card:before{content:'';height:3px;position:absolute;left:0;right:0;top:0;background:linear-gradient(90deg,var(--gold),#d6c1a1)}.card strong{font:600 37px/1.3 Georgia,serif;color:#183649}.btn{border-radius:8px}.heading{align-items:center}table{min-width:650px}.muted{font-size:13px}details{padding:4px 0}details summary{cursor:pointer;font-weight:700;color:#254f68}.success{color:#206947}.danger-text{color:#b44343}.preview-image{width:62px;height:62px;object-fit:cover;border-radius:50%;border:1px solid #dbe3e8}.cards-row{display:flex;gap:10px;flex-wrap:wrap}.notice.warning{border-color:#b18430;background:#fff9e8}@media(max-width:690px){.aside{width:100%}.panel{padding:18px}.grid{grid-template-columns:1fr 1fr}main{padding:21px 13px}.heading h1{font-size:29px}}/* Enterprise admin sidebar: persistent compact desktop rail, accessible mobile drawer */
.admin-sidebar-toggle{border:1px solid #dbe3e9;border-radius:9px;background:#f5f8fa;padding:8px 12px;cursor:pointer;color:#234259;font-size:16px;margin-right:15px}
.aside{transition:width .2s ease,transform .2s ease;z-index:500;max-height:100vh;position:sticky;top:0;overflow-y:auto;overflow-x:hidden}
.aside nav{min-width:0}.aside nav a{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
body.admin-collapsed .aside{width:78px!important;padding:19px 9px!important}
body.admin-collapsed .aside .brand{padding:5px 0 20px!important;justify-content:center}
body.admin-collapsed .aside .brand>span:nth-child(2),body.admin-collapsed .aside .aside-caption,body.admin-collapsed .aside .aside-bottom{display:none!important}
body.admin-collapsed .aside nav a{font-size:0!important;padding:10px 0!important;text-align:center}
body.admin-collapsed .aside nav a::before{content:attr(data-short);font-size:13px;color:inherit;font-weight:800;display:inline-block}
body.admin-collapsed .content{min-width:0}.topbar>span:first-of-type{margin-right:auto}
.admin-backdrop{display:none}
@media(max-width:800px){.shell{display:block}.aside,body.admin-collapsed .aside{position:fixed;top:0;left:0;bottom:0;max-height:100vh;width:250px!important;padding:20px 12px!important;transform:translateX(-103%);box-shadow:10px 0 30px rgba(4,21,35,.13)}body.admin-open .aside{transform:translateX(0)}body.admin-collapsed .aside .brand>span:nth-child(2),body.admin-collapsed .aside .aside-caption,body.admin-collapsed .aside .aside-bottom{display:initial!important}body.admin-collapsed .aside nav a{text-align:left;font-size:13px!important;padding:11px 15px!important}body.admin-collapsed .aside nav a::before{display:none}body.admin-open .admin-backdrop{display:block;position:fixed;inset:0;background:rgba(12,26,39,.45);z-index:490}.topbar{position:sticky;top:0;z-index:400;gap:8px}.topbar em{white-space:normal}}
