:root{--ink:#111827;--muted:#667085;--line:#e5e7eb;--paper:#f5f6f8;--white:#ffffff;--charcoal:#0b111c;--red:#ef2b2d;--red-dark:#b91c1c;--orange:#ff7d44;--blue:#0058c4}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:var(--paper);font-family:var(--font-inter),var(--font-noto-sc),Arial,sans-serif;letter-spacing:0}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}.login-page{min-height:100vh;display:grid;place-items:center;padding:24px;background:linear-gradient(135deg,rgba(11,17,28,.92),rgba(239,43,45,.74)),url(/admin-bg.svg);background-size:cover}.login-panel{width:min(440px,100%);background:var(--white);border:1px solid var(--line);border-radius:8px;padding:32px;box-shadow:0 24px 60px rgba(17,24,39,.18)}.brand-row{display:flex;align-items:center;gap:12px;margin-bottom:24px}.brand-mark{width:42px;height:42px;border-radius:8px;display:grid;place-items:center;background:var(--red);color:var(--white);font-weight:900}.brand-title{display:grid;grid-gap:2px;gap:2px}.brand-title strong{font-size:18px}.brand-title span{color:var(--muted);font-size:13px}.dashboard{min-height:100vh;display:grid;grid-template-columns:260px 1fr;min-width:0}.sidebar{background:var(--charcoal);color:rgba(255,255,255,.86);padding:24px 18px;display:flex;flex-direction:column;gap:28px;min-width:0}.sidebar .brand-mark{background:var(--red);color:var(--white)}.sidebar .brand-title span{color:rgba(255,255,255,.58)}.nav-list{display:grid;grid-gap:8px;gap:8px;min-width:0}.nav-button{border:0;min-height:44px;border-radius:8px;background:transparent;color:rgba(255,255,255,.78);display:flex;align-items:center;gap:10px;padding:0 12px;text-align:left;font-weight:800}.nav-button.active,.nav-button:hover{background:rgba(239,43,45,.2);color:var(--white)}.main{min-width:0}.topbar{min-height:72px;background:var(--white);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 28px}.topbar h1{margin:0;font-size:22px}.content{padding:28px;min-width:0}.grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:14px;gap:14px;margin-bottom:20px}.panel,.record,.stat-card{background:var(--white);border:1px solid var(--line);border-radius:8px;box-shadow:0 8px 24px rgba(17,24,39,.05)}.stat-card{padding:18px}.stat-card span{color:var(--muted);font-size:13px}.stat-card strong{display:block;font-size:30px;margin-top:6px;color:var(--red-dark)}.stat-card small{display:block;color:var(--muted);margin-top:4px}.panel{padding:22px;margin-bottom:18px;min-width:0}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}.panel h3,.panel-head h2{margin:0}.panel-copy{color:var(--muted);margin:6px 0 0;line-height:1.6}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:14px;gap:14px}.field{display:grid;grid-gap:7px;gap:7px}.field.full{grid-column:1/-1}.field label{color:#344054;font-weight:800;font-size:13px}.field input,.field select,.field textarea,.panel-head select,.toolbar input,.toolbar select{width:100%;border:1px solid var(--line);border-radius:8px;background:#fbfcfd;color:var(--ink);min-height:42px;padding:10px 12px}.field textarea{min-height:120px;resize:vertical;line-height:1.55}.field input:focus,.field select:focus,.field textarea:focus,.panel-head select:focus,.toolbar input:focus,.toolbar select:focus{outline:2px solid rgba(239,43,45,.18);border-color:rgba(239,43,45,.52)}.field-help{color:var(--muted);font-size:12px;line-height:1.5}.checkbox-row{display:flex;align-items:center;gap:8px;color:#344054;font-weight:800}.checkbox-row input{width:18px;height:18px}.actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}.button{border:0;border-radius:8px;min-height:40px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 14px;font-weight:850}.button:disabled{cursor:not-allowed;opacity:.65}.button.primary{background:var(--red);color:var(--white)}.button.secondary{background:#fff1ef;color:var(--red-dark)}.button.danger{background:#fee4e2;color:#b42318}.button.ghost{background:#f2f4f7;color:#344054}.button.square{width:42px;padding:0;flex:0 0 auto}.no-margin{margin-top:0}.large-textarea{min-height:220px}.input-with-button{display:flex;gap:8px}.upload-row{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.notice{border-radius:8px;padding:12px 14px;background:#fff7ed;border:1px solid #fed7aa;color:#9a3412;margin-bottom:16px}.notice.compact{margin:0;padding:10px 12px}.error{background:#fee4e2;color:#b42318;border-color:#fecdca}.toolbar{display:grid;grid-template-columns:minmax(0,1fr) 180px;grid-gap:12px;gap:12px;margin-bottom:16px}.editor-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;grid-gap:18px;gap:18px;align-items:start}.preview-panel{border:1px solid var(--line);border-radius:8px;background:#fbfcfd;padding:18px;position:-webkit-sticky;position:sticky;top:92px}.preview-panel h3{margin:12px 0 8px;font-size:22px;line-height:1.25}.preview-panel p{color:var(--muted);line-height:1.65}.dark-preview{background:var(--charcoal);color:var(--white);border-color:#242d3d}.dark-preview .record-meta,.dark-preview p{color:rgba(255,255,255,.72)}.preview-eyebrow{display:inline-flex;align-items:center;gap:8px;color:var(--red-dark);font-size:12px;font-weight:900;text-transform:uppercase}.dark-preview .preview-eyebrow{color:var(--orange)}.preview-cover{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:8px;border:1px solid var(--line);margin-top:14px;background:#eef1f5}.empty-state{border:1px dashed var(--line);border-radius:8px;background:#fbfcfd;color:var(--muted);padding:22px}.compact-empty{padding:14px;margin-left:18px}.record-with-thumb{display:flex;align-items:center;gap:12px;min-width:0}.thumb{width:86px;aspect-ratio:16/10;border-radius:8px;object-fit:cover;border:1px solid var(--line);background:#eef1f5;flex:0 0 auto}.quick-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:14px;gap:14px}.quick-card{border:1px solid var(--line);border-radius:8px;background:#fbfcfd;color:var(--ink);min-height:150px;padding:18px;display:grid;align-content:start;grid-gap:10px;gap:10px;text-align:left}.quick-card svg{color:var(--red)}.quick-card span{color:var(--muted);line-height:1.55}.quick-card:hover{border-color:#fca5a5;background:#fff7f5}.form-section-title{margin:24px 0 14px;font-size:16px;font-weight:900;color:var(--red-dark)}.form-section-title:first-child{margin-top:0}.country-service-list{display:grid;grid-gap:16px;gap:16px}.country-service-group{border:1px solid var(--line);border-radius:8px;background:#fbfcfd;overflow:hidden}.country-service-group>.record{border:0;border-radius:0;box-shadow:none;background:#ffffff}.nested-records{display:grid;grid-gap:8px;gap:8px;padding:12px}.service-record{box-shadow:none}.records{display:grid;grid-gap:10px;gap:10px}.record{padding:16px;display:grid;grid-template-columns:1fr auto;grid-gap:12px;gap:12px;align-items:center}.record-title{font-weight:850}.record-meta{color:var(--muted);font-size:13px;margin-top:4px}.badge{display:inline-flex;align-items:center;min-height:24px;padding:0 8px;border-radius:999px;background:#fff1ef;color:var(--red-dark);font-size:12px;font-weight:850}.badge.muted{background:#eef1f5;color:var(--muted)}.preview-image{width:160px;aspect-ratio:16/10;object-fit:cover;border-radius:8px;border:1px solid var(--line);background:#eef1f5}@media (max-width:1020px){.dashboard{grid-template-columns:1fr}.sidebar{position:-webkit-sticky;position:sticky;top:0;z-index:10;padding:14px;overflow:hidden}.sidebar .brand-row{margin-bottom:0}.nav-list{display:flex;overflow-x:auto;width:100%;max-width:100%}.nav-button{white-space:nowrap}.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.editor-layout,.quick-grid{grid-template-columns:1fr}.preview-panel{position:static}}@media (max-width:700px){.topbar{display:grid;grid-gap:10px;gap:10px}.content,.topbar{padding:16px}.panel-head{display:grid;align-items:start}.actions{max-width:100%}.actions.no-margin{justify-content:flex-start}.form-grid,.grid,.record,.toolbar{grid-template-columns:1fr}.record-with-thumb{align-items:flex-start}.thumb{width:72px}.login-panel{padding:24px}}