.admin-main{max-width:1000px;margin:20px auto 80px;padding:0 22px}.admin .topbar{border-bottom:1px solid var(--line)}.back-link{font-size:13px;text-decoration:underline}.login-panel{max-width:420px;margin:65px auto;background:var(--white);border:1px solid var(--line);padding:32px;border-radius:15px}.admin h1{font-family:Georgia,serif;font-size:36px;font-weight:400;letter-spacing:-1px;margin:12px 0}.login-panel>p{font-size:13px;line-height:1.8;color:var(--muted)}.admin label{display:block;font-size:12px;font-weight:700;margin:18px 0 10px}.admin input:not([type=checkbox]),.admin select,.admin textarea{display:block;width:100%;min-width:0;border:1px solid #cfc3ae;padding:12px;border-radius:6px;background:var(--white);color:var(--ink);margin-top:8px;font-size:14px}.admin textarea{resize:vertical}.admin-heading,.list-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.admin h2{font-family:inherit;font-size:19px;font-weight:700;letter-spacing:0}.secondary,.small-button{border:1px solid #cfc3ae;background:var(--white);border-radius:6px;min-height:40px;padding:9px 14px;font-size:12px}.small-button{font-size:11px;padding:8px 10px}.danger{color:#ab2918}.admin-tabs{display:flex;gap:8px;margin:26px 0;overflow-x:auto}.admin-tabs button{flex:1;border:1px solid var(--line);background:var(--white);padding:15px 10px;border-radius:7px;font-size:13px;min-width:110px}.admin-tabs .active{background:var(--ink);color:white}.location-box,.form-card,.category-card{background:var(--white);border:1px solid var(--line);border-radius:12px;padding:25px}.location-box{margin-bottom:28px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.hint,.list-heading p,.location-note{font-size:12px;color:var(--muted);line-height:1.7}.location-note{background:var(--cream);padding:12px;border-radius:6px}.admin-search{max-width:380px}.admin-row{display:flex;align-items:center;gap:15px;padding:16px 0;border-bottom:1px solid var(--line)}.admin-row img{width:56px;height:auto;border-radius:7px}.admin-row .row-copy{flex:1;min-width:0}.admin-row h3{font-size:14px;margin:0 0 5px;overflow-wrap:anywhere}.admin-row p{font-size:11px;color:var(--muted);margin:0;line-height:1.5}.row-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:end}.category-card{margin-bottom:17px}.category-actions{display:flex;gap:7px;flex-wrap:wrap}.subcategory-row{margin-top:16px;padding-top:16px;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:12px}.subcategory-row h4{font-size:13px;margin:0 0 5px}.subcategory-row small{font-size:10px;color:var(--muted)}.admin details{padding:18px 0;border-bottom:1px solid var(--line)}.admin summary{font-size:13px;cursor:pointer;line-height:1.5}.admin .check{display:flex;gap:10px;align-items:center;font-weight:400}.admin input[type=checkbox]{width:18px;height:18px}.admin dialog{width:min(640px,calc(100% - 24px))}.admin dialog .form-card{border:0}.admin form>.button{margin-top:20px;width:100%}#image-preview{max-width:150px;height:auto;margin-top:12px}#message:not(:empty){position:sticky;top:10px;z-index:10;padding:15px 20px;background:#eae8ce;border:1px solid #aaab79;border-radius:8px;font-size:13px;line-height:1.6;margin:15px 0}#message.error{background:#fbe3db;border-color:#db9a87}#form-message,#category-message{color:#ad2a18;font-size:13px;line-height:1.6}.admin-view[aria-busy=true]{opacity:.6;pointer-events:none}
@media(max-width:600px){.admin-main{padding:0 16px}.login-panel{margin:30px auto;padding:24px}.admin-heading{align-items:start}.admin h1{font-size:29px}.admin h2{font-size:16px}.form-grid{grid-template-columns:1fr;gap:0}.location-box,.form-card,.category-card{padding:19px}.list-heading{align-items:start;flex-wrap:wrap}.list-heading>.button{font-size:12px;padding:13px}.admin-row{flex-wrap:wrap;gap:10px}.admin-row .row-copy{min-width:180px}.row-actions{width:100%;justify-content:start;padding-left:0}.subcategory-row{display:block}.subcategory-row .category-actions{margin-top:10px}.admin-tabs button{font-size:11px;padding:13px 8px;min-width:90px}.category-actions .small-button{flex-grow:1}}
