:root{font-family:Inter,system-ui,-apple-system,sans-serif;color:#10211d;background:#f4f2ec}*{box-sizing:border-box}.admin-body{margin:0;min-height:100vh}.admin-header{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:1.1rem clamp(1rem,4vw,4rem);background:#fff;border-bottom:1px solid #ddd9cf}.admin-header h1{margin:.15rem 0 0;font:600 clamp(1.4rem,3vw,2rem) Georgia,serif}.admin-kicker{margin:0;color:#ef5b45;font-size:.72rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase}.admin-header nav{display:flex;align-items:center;gap:1rem}.admin-header nav a,.admin-header nav button,.back-link{color:#245f50;font-weight:700;text-decoration:none;background:none;border:0;cursor:pointer}.admin-main{width:min(1120px,calc(100% - 2rem));margin:2rem auto 8rem}.admin-intro{display:flex;justify-content:space-between;gap:1rem;align-items:center;margin-bottom:1.5rem}.admin-intro p{margin:0;color:#596661}.admin-intro span{color:#16725c;font-weight:700}.admin-sections{display:grid;gap:1rem}.admin-group{border:1px solid #d8d4ca;border-radius:16px;background:#fff;overflow:hidden}.admin-group>summary{padding:1.15rem 1.35rem;cursor:pointer;font-weight:800;list-style:none}.admin-group>summary::-webkit-details-marker{display:none}.admin-group>summary::after{content:"+";float:right}.admin-group[open]>summary::after{content:"−"}.admin-group.nested{margin:.75rem 0;border-radius:10px;background:#faf9f6}.admin-group.nested>summary{padding:.85rem 1rem;font-size:.93rem}.admin-object,.admin-array{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;padding:1.2rem;border-top:1px solid #ece8df}.admin-group.nested>.admin-object,.admin-group.nested>.admin-array{grid-template-columns:1fr}.admin-field label{display:grid;gap:.45rem;color:#45534e;font-size:.78rem;font-weight:800}.admin-field input,.admin-field textarea{width:100%;border:1px solid #cec9be;border-radius:9px;background:#fff;padding:.75rem;font:inherit;color:#10211d;resize:vertical}.admin-field input:focus,.admin-field textarea:focus{outline:2px solid #72b4a2;border-color:transparent}.image-field{grid-column:1/-1}.image-tools{display:flex;align-items:center;gap:1rem;margin-top:.7rem}.image-tools img{width:110px;height:75px;object-fit:cover;border-radius:8px;background:#eee}.image-tools input{display:none}.image-tools button{border:1px solid #245f50;border-radius:8px;background:#fff;color:#245f50;padding:.65rem .85rem;font-weight:800;cursor:pointer}.save-bar{position:fixed;z-index:20;bottom:0;left:0;right:0;display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1rem clamp(1rem,4vw,4rem);background:rgba(16,33,29,.96);color:#fff;box-shadow:0 -8px 30px #0002}.admin-button{border:0;border-radius:8px;padding:.85rem 1.2rem;font:800 .9rem inherit;cursor:pointer}.admin-button.primary{background:#ef5b45;color:#fff}.admin-button:disabled{opacity:.55;cursor:wait}.editor-loading{padding:3rem;text-align:center}.login-body{display:grid;place-items:center;padding:1rem;background:linear-gradient(140deg,#eef4ef,#fff5e9)}.login-card{width:min(460px,100%);padding:2.2rem;border:1px solid #ddd8cc;border-radius:22px;background:#fff;box-shadow:0 30px 80px #173b3020}.login-card img{width:220px;height:auto;margin-bottom:2rem}.login-card h1{margin:.5rem 0 1.5rem;font:600 2rem Georgia,serif}.login-form{display:grid;gap:1rem}.login-form label{display:grid;gap:.4rem;font-weight:800;font-size:.85rem}.login-form input{border:1px solid #ccc6ba;border-radius:9px;padding:.85rem;font:inherit}.login-form .admin-button{margin-top:.5rem}.admin-alert{margin:0 0 1rem;padding:.8rem;border-radius:8px;background:#fff2ca;color:#69500b;font-size:.85rem}.admin-alert.error{background:#ffe3df;color:#8b2418}.back-link{display:inline-block;margin-top:1.4rem}code{font-size:.8em}@media(max-width:720px){.admin-header{align-items:flex-start;flex-direction:column}.admin-header nav{width:100%;justify-content:space-between}.admin-intro,.save-bar{align-items:flex-start;flex-direction:column}.admin-object,.admin-array{grid-template-columns:1fr}.save-bar .admin-button{width:100%}.save-bar span{display:none}}
