:root{--ink:#171512;--cream:#f3ede3;--gold:#b4925a}*{box-sizing:border-box}body{margin:0;font-family:'DM Sans';background:#f7f5f1;color:var(--ink);display:grid;grid-template-columns:260px 1fr;min-height:100vh}aside{background:var(--ink);color:white;padding:28px;position:sticky;top:0;height:100vh}aside img{width:150px;filter:invert(1)}aside h1{font-family:'Italiana';font-weight:400;font-size:2rem;margin-bottom:5px}aside p{font-size:.8rem;color:#aaa;line-height:1.5}aside nav{display:grid;gap:7px;margin:35px 0}aside button,aside a{display:block;width:100%;text-align:left;background:none;border:0;color:#bbb;padding:11px;text-decoration:none;cursor:pointer}aside nav button.active{color:white;border-left:2px solid var(--gold);background:#ffffff0d}main{padding:40px 5vw}.panel{max-width:480px;margin:10vh auto;background:white;padding:38px;box-shadow:0 15px 50px #0001}h2{font-family:'Italiana';font-size:2.5rem;font-weight:400;margin:0 0 20px}header{display:flex;justify-content:space-between;align-items:end;border-bottom:1px solid #ddd;padding-bottom:20px;margin-bottom:30px}header span{font-size:.68rem;letter-spacing:.2em;color:var(--gold)}label{display:block;font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;margin:16px 0}input,textarea,select{display:block;width:100%;padding:12px;margin-top:6px;border:1px solid #d9d5cd;background:white;font:inherit}button.primary,form button,.card button{border:0;background:var(--ink);color:white;padding:12px 18px;cursor:pointer}.tab{display:none}.tab.active{display:block}.grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.card{background:white;padding:24px;border:1px solid #e1ddd5;margin-bottom:15px}.card h3{font-family:'Italiana';font-size:1.55rem;font-weight:400}.actions{display:flex;gap:8px}.danger{background:#8b2d2d!important}.gallery-admin{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.gallery-admin img{width:100%;aspect-ratio:1;object-fit:cover}.pill{display:inline-block;padding:5px 9px;background:var(--cream);font-size:.7rem}.logo-preview{width:180px;max-height:120px;object-fit:contain}.muted{color:#777;font-size:.85rem}@media(max-width:850px){body{display:block}aside{height:auto;position:relative}aside nav{grid-template-columns:repeat(2,1fr)}main{padding:25px}.grid,.gallery-admin{grid-template-columns:1fr}}
