:root{font-family:Inter,ui-sans-serif,system-ui,sans-serif;color:#17211e;background:#f4f3ed;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button{border:0;border-radius:9px;background:#1f594c;color:#fff;padding:.65rem 1rem;cursor:pointer;display:inline-flex;gap:.45rem;align-items:center;justify-content:center}button:disabled{opacity:.55;cursor:not-allowed}.ghost{background:transparent;color:inherit;border:1px solid #d5ddd8}.danger{color:#9b2c2c}.link{background:none;color:#1f594c;padding:.3rem;text-decoration:underline}.shell{display:grid;grid-template-columns:250px 1fr;min-height:100vh}aside{background:#173b34;color:#edf6f2;padding:1.3rem;display:flex;flex-direction:column;position:sticky;top:0;height:100vh}.brand{display:flex;gap:.75rem;align-items:center;margin-bottom:2rem}.brand div{display:flex;flex-direction:column}.brand small{opacity:.7}nav{display:grid;gap:.35rem}nav a{color:#cfe0da;text-decoration:none;padding:.7rem;border-radius:8px;display:flex;gap:.65rem;align-items:center}nav a.active,nav a:hover{background:#28564c;color:#fff}.account{margin-top:auto;display:grid;gap:.6rem;overflow-wrap:anywhere}main{padding:2rem;max-width:1500px;width:100%;margin:auto}.page-head{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.4rem}.page-head h1{margin:0}.page-head p{margin:.3rem 0;color:#64716c}.card{background:#fff;border:1px solid #dfe3df;border-radius:14px;padding:1.2rem;box-shadow:0 4px 16px #173b340a}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.stats{grid-template-columns:repeat(5,minmax(130px,1fr))}.stat strong{display:block;font-size:1.9rem}.stat span{color:#68746f}.toolbar{display:flex;gap:.65rem;margin-bottom:1rem;flex-wrap:wrap}.toolbar input,.toolbar select{max-width:340px}.table-wrap{overflow:auto}.table{width:100%;border-collapse:collapse}.table th,.table td{text-align:left;padding:.75rem;border-bottom:1px solid #e8ebe8;vertical-align:top}.table th{color:#65716c;font-size:.8rem;text-transform:uppercase}.status{padding:.2rem .5rem;border-radius:99px;background:#eceeea;font-size:.78rem}.status.published{background:#d9f1e7;color:#155b45}.status.archived{background:#eee2e2;color:#7c2929}.modal-backdrop{position:fixed;inset:0;background:#15211db5;display:grid;place-items:center;padding:1rem;z-index:10}.modal{width:min(900px,100%);max-height:92vh;overflow:auto}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.wide{grid-column:1/-1}label{display:grid;gap:.35rem;font-weight:600;font-size:.9rem}input,textarea,select{width:100%;padding:.65rem;border:1px solid #cfd6d2;border-radius:8px;background:#fff}textarea{min-height:90px;resize:vertical}.actions{display:flex;justify-content:flex-end;gap:.6rem;margin-top:1rem}.alert{padding:.75rem;border-radius:8px;margin:.7rem 0}.alert.error{background:#fae5e3;color:#812b25}.alert.success{background:#def3e9;color:#165a45}.empty,.loading{padding:2.5rem;text-align:center;color:#66736e}.login,.center{min-height:100vh;display:grid;place-items:center;padding:1rem}.login-card{width:min(420px,100%);display:grid;gap:1rem}.login-card h1,.login-card p{margin:0}.toasts{position:fixed;right:1rem;bottom:1rem;display:grid;gap:.5rem;z-index:20}.toast{padding:.8rem 1rem;border-radius:9px;color:#fff;background:#1f594c;box-shadow:0 8px 30px #0003}.toast.error{background:#a03c35}.check{display:grid;grid-template-columns:28px 1fr;gap:.6rem;padding:.75rem;border-bottom:1px solid #e5e8e5}.check.ok{color:#185c47}.check.fail{color:#8b302a}.preview{max-width:180px;max-height:230px;border-radius:8px}.progress{height:9px;background:#e1e5e2;border-radius:9px;overflow:hidden}.progress span{display:block;height:100%;background:#1f594c}.chips{display:flex;flex-wrap:wrap;gap:.4rem}.chip{border:1px solid #cfd7d3;padding:.35rem .55rem;border-radius:99px}.chip input{width:auto}@media(max-width:900px){.shell{grid-template-columns:1fr}aside{height:auto;position:static}nav{grid-template-columns:repeat(2,1fr)}main{padding:1rem}.stats,.grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.form-grid,.stats,.grid{grid-template-columns:1fr}.wide{grid-column:auto}.page-head{align-items:flex-start;flex-direction:column}}
