:root{
 --orange:#fec26b;--pink:#f76d76;--blue:#004aad;--ink:#18202a;--muted:#68707a;
 --bg:#f7f8fb;--white:#fff;--line:#e5e8ee;--green:#35a66a;--red:#d54c57;
}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink);font-family:Poppins,Arial,sans-serif;font-size:14px}
a{color:var(--blue);text-decoration:none}a:hover{text-decoration:underline}
.site-header{position:sticky;top:0;z-index:10;background:#fff;border-bottom:1px solid var(--line);min-height:72px;padding:12px 4%;display:flex;align-items:center;justify-content:space-between;gap:24px}
.logo{font-size:23px;font-weight:700;color:var(--blue);white-space:nowrap}.logo span{color:var(--pink)}
.main-nav{display:flex;gap:16px;align-items:center;flex-wrap:wrap}
.container{max-width:1280px;margin:32px auto;padding:0 20px}
h1{font-size:30px;margin:0 0 22px}h2{font-size:20px;margin:0 0 12px}h3{font-size:16px}
.topbar{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-bottom:22px}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px}
.card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:22px;box-shadow:0 8px 30px #16233a0b}
.metric{font-size:30px;font-weight:700;color:var(--blue);margin-top:6px}
.muted{color:var(--muted)}.small{font-size:12px;color:var(--muted)}
.button,button{border:0;border-radius:10px;background:var(--blue);color:#fff;padding:10px 15px;font:inherit;font-weight:600;cursor:pointer;display:inline-block}
.button.secondary,button.secondary{background:#eef3fb;color:var(--blue)}.button.orange,button.orange{background:var(--orange);color:var(--ink)}
button.danger{background:var(--red)}
.actions{display:flex;gap:8px;flex-wrap:wrap}
label{display:block;font-weight:600;margin:12px 0}input,select,textarea{width:100%;display:block;margin-top:6px;border:1px solid #d5dbe4;border-radius:10px;padding:11px;font:inherit;background:#fff}
textarea{min-height:130px;resize:vertical}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.full{grid-column:1/-1}
table{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--line);border-radius:15px;overflow:hidden}
th,td{padding:12px 13px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}th{background:#f1f4f8;font-size:12px;text-transform:uppercase;letter-spacing:.03em}
.badge{display:inline-block;border-radius:99px;padding:4px 9px;background:#edf0f4;font-size:11px;font-weight:600}.badge.validated,.badge.accepted{background:#c9efd8;color:#21683f}.badge.submitted{background:#d8e6ff;color:#24518d}.badge.published{background:#bfead0;color:#21683f}.badge.rejected{background:#ffd6da;color:#9d2c38}.badge.draft{background:#fff0ce}
.flash{padding:13px 16px;border-radius:12px;background:#fff;margin-bottom:18px;border-left:5px solid var(--blue)}.flash.error{border-color:var(--pink)}.flash.success{border-color:var(--green)}.flash.warning{border-color:var(--orange)}
.auth{max-width:470px;margin:70px auto}.center{text-align:center}
.filters{display:flex;gap:9px;flex-wrap:wrap;margin-bottom:15px}.filters a{padding:7px 10px;border-radius:8px;background:#fff;border:1px solid var(--line)}
.calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.cal-head{font-size:11px;font-weight:700;text-align:center;color:var(--muted);padding:7px}.day{min-height:130px;background:#fff;border:1px solid var(--line);border-radius:10px;padding:7px}.day.other{opacity:.45}.daynum{font-weight:700}.event{font-size:10px;border-radius:6px;padding:4px;margin-top:5px;background:var(--orange)}.event.validated{background:#c9efd8}.event.submitted{background:#d8e6ff}.event.published{background:#bfead0}
.media-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:12px}.media-card{border:1px solid var(--line);border-radius:12px;padding:8px;background:#fff}.media-card img{width:100%;height:110px;object-fit:cover;border-radius:8px}
.notice{background:#fff8e8;border:1px solid #f2d38f;padding:14px;border-radius:12px}
.content-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding:18px;border:1px solid var(--line);border-radius:14px;background:#fafbfc}.content-fields[hidden]{display:none}
footer{text-align:center;padding:40px;color:var(--muted)}
@media(max-width:760px){.site-header{position:static;align-items:flex-start;flex-direction:column}.form-grid,.content-fields{grid-template-columns:1fr}.full{grid-column:auto}.calendar{grid-template-columns:repeat(2,1fr)}.cal-head{display:none}table{font-size:12px}h1{font-size:25px}}
