:root{--green:#064638;--ink:#161616;--muted:#6b6f76;--line:#e5e7eb;--bg:#f5f5f7;--card:#fff;--soft:#eef4f1;--danger:#b42318}*{box-sizing:border-box}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Inter,Arial,sans-serif;background:var(--bg);color:var(--ink)}button,input,textarea,select{font:inherit}button{cursor:pointer}.admin-top{height:72px;display:flex;align-items:center;justify-content:space-between;padding:0 24px;background:rgba(255,255,255,.86);backdrop-filter:blur(18px);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:10}.admin-top strong{display:block;font-size:20px}.admin-top span{color:var(--muted);font-size:13px}.admin-top a,.admin-top button,.savebar button,.btn{border:1px solid var(--line);background:#fff;border-radius:999px;padding:10px 14px;text-decoration:none;color:var(--ink);font-weight:800}.admin-top button,.savebar button,.btn.primary{background:var(--green);color:#fff;border-color:var(--green)}.admin-shell{display:grid;grid-template-columns:280px 1fr;gap:24px;padding:24px 24px 90px}.admin-sidebar{position:sticky;top:96px;height:calc(100vh - 120px);background:#fff;border:1px solid var(--line);border-radius:22px;padding:12px;box-shadow:0 12px 36px rgba(0,0,0,.06)}.side{display:block;width:100%;border:0;text-align:left;background:transparent;border-radius:16px;padding:15px 14px;font-weight:900;color:#34383f}.side.active,.side:hover{background:var(--soft);color:var(--green)}.admin-main{min-width:0}.status{margin:0 0 14px;padding:12px 16px;border-radius:16px;background:#fff;border:1px solid var(--line);color:var(--muted)}.panel{background:#fff;border:1px solid var(--line);border-radius:24px;padding:22px;margin-bottom:18px;box-shadow:0 12px 36px rgba(0,0,0,.05)}.panel h1{font-size:34px;margin:0 0 8px;letter-spacing:-.04em}.panel h2{font-size:22px;margin:0 0 14px}.panel p{color:var(--muted)}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.field{display:grid;gap:7px;margin-bottom:12px}.field span{font-weight:800;font-size:13px;color:#3a3d42}.field input,.field textarea,.field select{width:100%;border:1px solid var(--line);border-radius:14px;background:#fff;padding:12px 13px;outline:none}.field input:focus,.field textarea:focus,.field select:focus{border-color:rgba(6,70,56,.45);box-shadow:0 0 0 4px rgba(6,70,56,.08)}.field textarea{min-height:88px;resize:vertical}.row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.item-card{border:1px solid var(--line);border-radius:18px;background:#fbfbfc;padding:16px;margin:12px 0}.item-card h3{margin:0 0 12px}.item-head{display:flex;justify-content:space-between;gap:14px;align-items:center;margin-bottom:10px}.mini{font-size:12px;color:var(--muted)}.danger{background:#fff!important;color:var(--danger)!important;border-color:#ffd6d1!important}.muted-btn{background:#fff!important;color:var(--ink)!important;border-color:var(--line)!important}.savebar{position:fixed;right:24px;bottom:20px;z-index:20;background:#fff;border:1px solid var(--line);border-radius:999px;padding:10px;box-shadow:0 18px 50px rgba(0,0,0,.16);display:flex;align-items:center;gap:12px}.savebar span{font-size:13px;color:var(--muted);padding-right:8px}.tabs{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0}.tab{background:#fff;border:1px solid var(--line);border-radius:999px;padding:10px 13px;font-weight:800}.tab.active{background:var(--green);color:#fff;border-color:var(--green)}.upload-line{display:grid;grid-template-columns:1fr auto;gap:8px}.preview-img{width:120px;height:76px;object-fit:cover;border-radius:12px;border:1px solid var(--line);background:#fff}.color-preview{width:52px;height:40px;border-radius:12px;border:1px solid var(--line)}.login-body{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at 20% 10%,rgba(6,70,56,.14),transparent 30%),#f5f5f7}.login-box{width:min(430px,calc(100% - 32px));background:#fff;border:1px solid var(--line);border-radius:28px;padding:30px;box-shadow:0 24px 70px rgba(0,0,0,.12)}.login-box h1{margin:0;font-size:40px;letter-spacing:-.05em}.login-box p,.login-box small{color:var(--muted)}.login-box label{display:grid;gap:8px;font-weight:800;margin:14px 0}.login-box input{border:1px solid var(--line);border-radius:15px;padding:13px}.login-box button{width:100%;border:0;border-radius:999px;background:var(--green);color:#fff;font-weight:900;padding:14px;margin-top:12px}.error{background:#fff1f0;color:var(--danger);border:1px solid #ffd6d1;padding:12px;border-radius:14px;margin:12px 0}.section-types{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.section-types button{background:#fff;border:1px solid var(--line);border-radius:14px;padding:10px;font-weight:800}.section-types button:hover{background:var(--soft);color:var(--green)}@media(max-width:980px){.admin-shell{grid-template-columns:1fr}.admin-sidebar{position:static;height:auto}.grid,.grid.three{grid-template-columns:1fr}.section-types{grid-template-columns:repeat(2,1fr)}}
.library-select{margin-top:8px}.library-list{display:grid;gap:10px}.library-row{display:flex;align-items:center;justify-content:space-between;gap:14px;border:1px solid var(--line);background:#fbfbfc;border-radius:16px;padding:12px}.file-meta{min-width:0}.file-meta strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-meta small{display:block;color:var(--muted);font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-top:4px}@media(max-width:720px){.library-row{align-items:flex-start;flex-direction:column}.library-row .row{width:100%}.library-row .btn{flex:1;text-align:center}}

/* Improved media library */
.drop-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.dropzone{border:2px dashed #cfd6d2;background:#fbfbfc;border-radius:22px;padding:22px;text-align:center;display:grid;gap:8px;place-items:center;min-height:190px;transition:.18s}.dropzone h3{margin:0;font-size:22px}.dropzone p{margin:0;color:var(--muted)}.dropzone small{color:var(--muted);font-size:12px}.dropzone.dragover{background:var(--soft);border-color:var(--green);transform:translateY(-2px)}.file-meta-wrap{display:flex;align-items:center;gap:12px;min-width:0}.library-thumb{width:58px;height:48px;border:1px solid var(--line);border-radius:12px;background:#fff;display:grid;place-items:center;overflow:hidden;flex:0 0 auto}.library-thumb img{width:100%;height:100%;object-fit:cover}.library-thumb span{font-size:11px;font-weight:900;color:var(--green)}.media-modal{position:fixed;inset:0;background:rgba(0,0,0,.38);z-index:100;display:grid;place-items:center;padding:24px}.media-box{width:min(1120px,100%);max-height:88vh;overflow:auto;background:#fff;border-radius:26px;border:1px solid var(--line);box-shadow:0 24px 80px rgba(0,0,0,.24);padding:22px}.media-toolbar{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:14px 0}.media-toolbar input{flex:1;min-width:260px;border:1px solid var(--line);border-radius:999px;padding:12px 16px}.media-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.media-card{background:#fbfbfc;border:1px solid var(--line);border-radius:18px;padding:10px;text-align:left;display:grid;gap:8px;color:var(--ink)}.media-card:hover{border-color:rgba(6,70,56,.55);box-shadow:0 10px 30px rgba(6,70,56,.10)}.media-thumb{height:110px;border-radius:14px;background:#fff;border:1px solid var(--line);display:grid;place-items:center;overflow:hidden}.media-thumb img{width:100%;height:100%;object-fit:cover}.media-thumb span{font-weight:900;color:var(--green)}.media-card strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.media-card small{color:var(--muted);font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media(max-width:1100px){.media-grid{grid-template-columns:repeat(3,1fr)}.drop-grid{grid-template-columns:1fr}}@media(max-width:720px){.media-grid{grid-template-columns:repeat(2,1fr)}.media-box{padding:14px}.media-toolbar input{min-width:100%}}


/* Keep uploaded media previews compact inside admin */
.library-row img,
.file-meta-wrap img {
  width: 80px !important;
  height: 60px !important;
  object-fit: cover !important;
  border-radius: 12px;
  display: block;
}
.library-thumb {
  width: 80px;
  height: 60px;
  max-width: 80px;
  max-height: 60px;
  overflow: hidden;
  flex: 0 0 auto;
}
.library-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.media-thumb {
  height: 90px;
}
.color-edit-card { background: #fbfbfb; }


/* Page builder left navigation */
.builder-layout { display: grid; grid-template-columns: 260px minmax(0, 1fr); gap: 20px; align-items: start; }
.builder-side-menu { position: sticky; top: 94px; background: #fff; border: 1px solid var(--line); border-radius: 22px; padding: 16px; box-shadow: var(--shadow-sm); max-height: calc(100vh - 120px); overflow: auto; }
.builder-side-menu strong { display:block; margin: 0 0 12px; font-size: 15px; color: #111; }
.builder-side-menu a { display:flex; align-items:center; gap:10px; padding: 10px 12px; border-radius: 14px; color:#27302d; text-decoration:none; font-weight: 800; font-size: 14px; }
.builder-side-menu a:hover { background:#edf4f1; color:#064638; }
.builder-side-menu a span { width: 22px; height: 22px; border-radius: 50%; display:grid; place-items:center; background:#f1f3f1; color:#064638; font-size: 12px; }
.builder-editor { margin: 0; }
.admin-anchor { scroll-margin-top: 110px; }
.section-edit-card { scroll-margin-top: 110px; }

/* Keep media library thumbnails small */
.library-thumb, .library-row img, .file-meta-wrap img { width: 84px !important; height: 58px !important; max-width: 84px !important; max-height: 58px !important; object-fit: cover !important; border-radius: 12px; overflow: hidden; display: block; }
.library-thumb { display: grid; place-items: center; background: #f4f5f3; border: 1px solid var(--line); flex: 0 0 auto; }
.library-thumb img { width: 100% !important; height: 100% !important; }

@media (max-width: 1100px) { .builder-layout { grid-template-columns: 1fr; } .builder-side-menu { position: relative; top: 0; max-height: none; } }

/* Dedicated admin pages */
.admin-sidebar a.side { text-decoration:none; }
.side-group-title { margin: 18px 12px 8px; font-size: 11px; text-transform: uppercase; letter-spacing: .12em; color: var(--muted); font-weight: 900; }
.admin-cards { display:grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap:14px; margin:18px 0; }
.admin-card { display:grid; gap:8px; min-height:120px; align-content:start; padding:18px; border:1px solid var(--line); border-radius:20px; background:#fbfbfc; text-decoration:none; color:var(--ink); }
.admin-card:hover { background: var(--soft); color: var(--green); transform: translateY(-2px); }
.admin-card strong { font-size:18px; }
.admin-card span { color: var(--muted); line-height:1.45; }
@media(max-width:980px){.admin-cards{grid-template-columns:1fr}}
