:root{--ink:#173c2f;--red:#b84c37;--paper:#f7f3eb;--sage:#e6ece2;--line:#d8d4ca;--muted:#6f7771}*{box-sizing:border-box}body{margin:0;background:#f4f1ea;color:#27312c;font-family:Arial,sans-serif}.shell{min-height:100vh;display:grid;grid-template-columns:240px 1fr}.sidebar{background:#173c2f;color:white;padding:28px 20px;display:flex;flex-direction:column;position:sticky;top:0;height:100vh}.brand{font:34px Georgia,serif;text-decoration:none;color:white}.brand span{font-size:18px}.cms-label{font-size:10px;letter-spacing:.24em;opacity:.6;margin:5px 0 36px}.sidebar nav{display:grid;gap:8px}.sidebar button{border:0;background:transparent;color:#dce5de;text-align:left;padding:12px 14px;cursor:pointer}.sidebar button.active,.sidebar button:hover{background:#2a5443}.ghost{margin-top:auto!important;border:1px solid #658073!important}.main{padding:34px;max-width:1400px;width:100%;margin:auto}.login-card{max-width:440px;margin:10vh auto;background:white;padding:36px;border:1px solid var(--line)}h1{font:normal 38px Georgia,serif;color:var(--ink);margin:0 0 8px}.login-card p{color:var(--muted)}label{display:grid;gap:7px;font-size:13px;font-weight:700;margin-bottom:17px}label small{font-weight:400;color:#777}input,textarea,select{width:100%;border:1px solid #cbc9c1;background:#fff;padding:11px 12px;font:14px Arial,sans-serif}textarea{resize:vertical}button,.button{border:0;background:#e7e9e4;color:#26322c;padding:11px 16px;text-decoration:none;cursor:pointer;font-size:13px}.primary{background:var(--red);color:white}.danger{background:#772d24;color:white}.top{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px}.top p{color:var(--muted);font-size:12px}.panel{background:white;border:1px solid var(--line);padding:24px}.toolbar{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-bottom:18px}.toolbar input{max-width:460px}.toolbar select{max-width:180px}.table{width:100%;border-collapse:collapse}.table th,.table td{padding:12px 10px;border-bottom:1px solid #e2dfd8;text-align:left;font-size:13px}.table th{font-size:11px;letter-spacing:.08em;color:#777}.badge{display:inline-block;padding:5px 8px;border-radius:20px;background:#e9ece7;font-size:11px}.badge.published{background:#dcebdd;color:#285c32}.article-link{font:18px Georgia,serif;color:var(--ink);text-decoration:none}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:18px}.grid3{display:grid;grid-template-columns:1fr 1fr 1.5fr;gap:18px;align-items:end}.check{display:flex;align-items:center;gap:8px;margin:0 0 17px}.check input{width:auto}.actions{display:flex;justify-content:flex-end;gap:10px;margin-bottom:17px}.media-picker{display:grid;grid-template-columns:1fr 300px;gap:20px}.hero-preview{height:170px;border:1px dashed #bbb;display:grid;place-items:center;color:#888;background:#faf9f6;background-size:cover;background-position:center}.upload-box{background:var(--sage);padding:20px;margin-bottom:24px}.upload-box form{display:grid;grid-template-columns:1fr 1fr auto;gap:10px}.media-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.media-card{border:1px solid var(--line);background:#fff;overflow:hidden}.media-card img{display:block;width:100%;aspect-ratio:1.5;object-fit:cover}.media-card .meta{padding:10px;font-size:11px}.media-card button{width:100%;margin-top:8px;background:#173c2f;color:white}.msg{font-size:13px;margin-top:10px;min-height:18px}.msg.error{color:#9d2d20}.msg.ok{color:#2c6a37}@media(max-width:900px){.shell{grid-template-columns:1fr}.sidebar{height:auto;position:static}.sidebar nav{grid-template-columns:repeat(4,1fr)}.ghost{margin-top:20px!important}.main{padding:18px}.grid2,.grid3,.media-picker{grid-template-columns:1fr}.media-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:560px){.sidebar nav{grid-template-columns:1fr 1fr}.media-grid{grid-template-columns:1fr}.upload-box form{grid-template-columns:1fr}.toolbar{align-items:stretch;flex-direction:column}.toolbar input,.toolbar select{max-width:none}}