:root{--navy:#102d4f;--blue:#1f5f91;--gold:#d4a437;--ink:#1d2935;--muted:#697786;--line:#e2e8ef;--bg:#f5f7fa;--white:#fff;--red:#b93535;--green:#24784b}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:14px/1.5 system-ui,-apple-system,"Segoe UI",sans-serif}button,input,textarea,select{font:inherit}button{cursor:pointer}.login{min-height:100vh;display:grid;place-items:center;background:linear-gradient(145deg,#0b2038,#214f76);padding:20px}.login-box{width:min(410px,100%);background:#fff;padding:36px;border-radius:10px;box-shadow:0 20px 55px #07192b88}.brand{text-align:center}.brand img{width:66px}.brand h1{font-size:23px;color:var(--navy);margin:10px 0 3px}.brand p{color:var(--muted);margin:0 0 25px}.field{margin:0 0 16px}.field label{display:block;font-weight:650;margin-bottom:6px}.field input,.field textarea,.field select{width:100%;padding:10px 12px;border:1px solid #cbd5df;border-radius:6px;background:#fff}.btn{border:0;border-radius:6px;padding:10px 15px;font-weight:650}.primary{background:var(--navy);color:#fff}.ghost{background:#fff;border:1px solid #cbd5df;color:var(--ink)}.danger{background:#fff;color:var(--red);border:1px solid #efc5c5}.shell{min-height:100vh;display:flex}.sidebar{width:250px;background:var(--navy);color:#fff;flex:none;padding:22px 14px}.side-brand{display:flex;align-items:center;gap:10px;padding:0 10px 24px;font-weight:700;font-size:16px}.side-brand img{width:38px}.side-brand small{display:block;color:#b9c7d6;font-size:11px;font-weight:400}.nav{display:grid;gap:4px}.nav button{background:transparent;border:0;color:#d8e3ed;text-align:left;padding:11px 12px;border-radius:6px}.nav button:hover,.nav button.active{background:#fff;color:var(--navy)}.nav .badge{float:right;background:#e4a32b;color:#172b40;border-radius:10px;padding:1px 7px;font-size:11px}.main{min-width:0;flex:1}.top{height:70px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 30px}.top h2{margin:0;color:var(--navy);font-size:20px}.content{padding:28px 30px;max-width:1200px}.sub{color:var(--muted);margin:4px 0 22px}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin-bottom:22px}.stat,.panel,.item{background:#fff;border:1px solid var(--line);border-radius:8px}.stat{padding:18px}.stat b{display:block;font-size:27px;color:var(--navy)}.stat span{color:var(--muted);font-size:12px}.panel{padding:20px;margin-bottom:20px}.panel-head{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding-bottom:14px;margin-bottom:16px}.panel h3{margin:0;color:var(--navy)}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.item{padding:14px}.item img{width:100%;height:125px;object-fit:cover;border-radius:5px;background:#edf1f5}.item h4{margin:10px 0 4px}.item p{margin:0;color:var(--muted);font-size:13px}.item-actions{display:flex;gap:7px;margin-top:12px}.item-actions .btn{padding:7px 10px;font-size:12px}.table{width:100%;border-collapse:collapse}.table th,.table td{text-align:left;padding:11px;border-bottom:1px solid var(--line)}.table th{font-size:11px;text-transform:uppercase;color:var(--muted)}.notice{padding:11px 14px;border-radius:6px;background:#edf5fb;color:var(--blue);margin-bottom:16px}.toast{position:fixed;right:22px;bottom:22px;background:var(--navy);color:#fff;padding:12px 17px;border-radius:6px;box-shadow:0 5px 22px #0003}.mobile-menu{display:none}@media(max-width:800px){.sidebar{width:210px}.content{padding:22px 16px}.top{padding:0 16px}.stats{grid-template-columns:repeat(2,1fr)}.grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.sidebar{display:none}.sidebar.open{display:block;position:fixed;z-index:5;height:100vh}.mobile-menu{display:inline-flex;margin-right:10px}.top h2{font-size:17px}.grid{grid-template-columns:1fr}.stats{gap:9px}.stat{padding:13px}.stat b{font-size:22px}}

.media-upload{display:inline-flex!important;align-items:center;justify-content:center;visibility:visible!important;opacity:1;cursor:pointer}.btn:disabled,.btn[aria-busy=true]{opacity:.55;cursor:wait}
