:root{--ink:#24282e;--muted:#707780;--line:#dce0e5;--page:#f2f4f7;--blue:#168ac0;--box-0:#20a5df;--box-1:#26bd62;--box-2:#9b4de4;--box-3:#ef4164;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#24282e}*{box-sizing:border-box}body{margin:0;background:var(--page);color:var(--ink)}button,input{font:inherit}.auth-body,.admin-body{min-height:100vh}.auth-body{display:grid;place-items:center;padding:24px;background:radial-gradient(circle at top,#fff,#eef1f5)}.auth-card{width:min(430px,100%);padding:30px;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:0 24px 70px #20273320}.auth-brand{display:flex;align-items:center;gap:12px;margin-bottom:28px}.auth-brand img{width:42px;height:42px;object-fit:contain}.auth-brand strong,.auth-brand small{display:block}.auth-brand small{margin-top:2px;color:var(--muted);font-size:12px}.auth-grid{display:grid;grid-template-columns:repeat(2,16px);gap:4px}.auth-grid i{width:16px;height:16px;border-radius:3px;background:var(--box-0)}.auth-grid i:nth-child(2){background:var(--box-1)}.auth-grid i:nth-child(3){background:var(--box-2)}.auth-grid i:nth-child(4){background:var(--box-3)}h1{margin:0 0 8px;font-size:28px;letter-spacing:-.035em}.auth-card>p{margin:0 0 22px;color:var(--muted)}.stack-form{display:grid;gap:15px}.stack-form label,.two-fields label{display:grid;gap:7px;font-size:12px;font-weight:750}.stack-form input,.two-fields input,.hex-input{width:100%;padding:11px 12px;border:1px solid var(--line);border-radius:9px;background:#fff;outline:none}.stack-form input:focus,.two-fields input:focus,.hex-input:focus{border-color:#5baad0;box-shadow:0 0 0 3px #168ac018}.primary{border:0;border-radius:9px;background:#168ac0;color:#fff;padding:11px 16px;cursor:pointer;font-weight:800}.primary:hover{background:#0875a9}.muted-link{display:block;margin-top:20px;color:var(--muted);font-size:12px;text-align:center}.alert{margin:0 0 18px;padding:12px 14px;border-radius:9px;font-size:13px;font-weight:650}.alert.error{border:1px solid #e8a8b0;background:#fff1f3;color:#a63647}.alert.success{border:1px solid #a9d9bb;background:#effbf3;color:#257541}.admin-header{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px max(22px,calc((100% - 1240px)/2));border-bottom:1px solid var(--line);background:#ffffffed;backdrop-filter:blur(14px)}.admin-header strong,.admin-header span{display:block}.admin-header span{margin-top:2px;color:var(--muted);font-size:11px}.admin-header nav{display:flex;gap:8px}.admin-header a{padding:8px 10px;border:1px solid var(--line);border-radius:8px;color:#4f5660;text-decoration:none;font-size:12px;font-weight:700}.admin-shell{width:min(1240px,calc(100% - 36px));margin:28px auto 60px}.admin-title{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:22px}.admin-title span{color:#168ac0;font-size:10px;font-weight:900;letter-spacing:.1em}.admin-title h1{margin-top:4px}.admin-title p{margin:4px 0 0;color:var(--muted)}.admin-form{display:grid;gap:16px}.admin-card{padding:22px;border:1px solid var(--line);border-radius:14px;background:#fff;box-shadow:0 8px 24px #2027330b}.card-title{display:flex;gap:13px;margin-bottom:20px}.card-title>span{display:grid;place-items:center;width:32px;height:32px;border-radius:9px;background:#eef7fb;color:#168ac0;font-size:11px;font-weight:900}.card-title h2{margin:0;font-size:18px}.card-title p{margin:4px 0 0;color:var(--muted);font-size:12px}.color-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.color-field{display:grid;gap:8px;color:#5d646d;font-size:12px;font-weight:750}.color-field>div{display:grid;grid-template-columns:48px 1fr;gap:8px}.color-field input[type=color]{width:48px;height:42px;padding:3px;border:1px solid var(--line);border-radius:8px;background:#fff}.asset-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.asset-field{padding:16px;border:1px solid #e6e8eb;border-radius:11px;background:#fafbfc}.asset-field h3{margin:0 0 12px;font-size:14px}.asset-preview{display:grid;place-items:center;width:84px;height:84px;margin-bottom:13px;border:1px dashed #cfd4da;border-radius:12px;background:#fff}.asset-preview img{max-width:64px;max-height:64px;object-fit:contain}.favicon-preview{width:60px;height:60px}.placeholder-icon{font-size:28px;color:#9aa1aa}.asset-field input[type=file]{width:100%;font-size:11px}.check{display:flex;align-items:center;gap:7px;margin-top:12px;color:var(--muted);font-size:11px}.access-options{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:17px}.access-option{display:flex;align-items:flex-start;gap:10px;padding:15px;border:1px solid var(--line);border-radius:10px;cursor:pointer}.access-option:has(input:checked){border-color:#65afd1;background:#f1f9fc}.access-option strong,.access-option small{display:block}.access-option small{margin-top:4px;color:var(--muted);font-size:11px;line-height:1.4}.two-fields{display:grid;grid-template-columns:1fr 1fr;gap:14px}.two-fields small{color:var(--muted);font-size:10px}.form-footer{display:flex;justify-content:flex-end}@media(max-width:760px){.color-grid{grid-template-columns:1fr 1fr}.asset-grid,.access-options,.two-fields{grid-template-columns:1fr}.admin-title{align-items:flex-start;flex-direction:column}.admin-header{align-items:flex-start;flex-direction:column}}@media(max-width:430px){.color-grid{grid-template-columns:1fr}.admin-shell{width:min(100% - 20px,1240px)}}

/* Bilingual authentication and administrator layout */
.admin-auth-body{display:grid;place-items:center;padding:24px;background:radial-gradient(circle at top,#fff,#eef1f5)}
.server-language-toggle{position:fixed;top:20px;right:22px;z-index:20;display:flex;align-items:center;gap:5px;padding:8px 10px;border:1px solid var(--line);border-radius:9px;background:#ffffffeb;color:#4f5660;text-decoration:none;font-size:11px;font-weight:800;box-shadow:0 5px 18px #20273312;backdrop-filter:blur(10px)}
.server-language-toggle:hover{background:#fff;color:#168ac0}.server-language-toggle svg,.admin-language-link svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.server-language-toggle b{color:#b4b8bd;font-weight:500}.server-language-toggle .next{color:#9298a0}.admin-header-brand{display:flex;align-items:center;gap:11px}.admin-header-brand>img{width:38px;height:38px;object-fit:contain}.auth-grid.small{grid-template-columns:repeat(2,12px);gap:3px}.auth-grid.small i{width:12px;height:12px}.admin-header nav{align-items:center}.admin-language-link{display:inline-flex!important;align-items:center;gap:6px}.admin-body .auth-card{margin:auto}.admin-auth-body .auth-card{align-self:center;justify-self:center}
@media(max-width:760px){.server-language-toggle{top:12px;right:12px}.admin-header nav{flex-wrap:wrap}.admin-header-brand{width:100%}}

/* Robust uploaded-brand rendering: prevents natural-size images from breaking admin pages. */
.auth-brand,
.admin-header-brand,
.asset-preview {
  overflow: hidden;
}
.admin-brand-upload,
.auth-brand-image,
.admin-header-image,
.asset-preview-image {
  display: block !important;
  box-sizing: border-box !important;
  max-inline-size: 100% !important;
  max-block-size: 100% !important;
  object-fit: contain !important;
  object-position: center !important;
  background: transparent !important;
}
.auth-brand-image {
  inline-size: 42px !important;
  block-size: 42px !important;
  min-inline-size: 42px !important;
  min-block-size: 42px !important;
  flex: 0 0 42px !important;
}
.admin-header-image {
  inline-size: 38px !important;
  block-size: 38px !important;
  min-inline-size: 38px !important;
  min-block-size: 38px !important;
  flex: 0 0 38px !important;
}
.asset-preview-image {
  inline-size: 64px !important;
  block-size: 64px !important;
}
.favicon-preview-image {
  inline-size: 48px !important;
  block-size: 48px !important;
}


/* Language control inside the administrator login card */
.admin-login-card {
  position: relative;
}

.admin-login-card .admin-login-language-toggle {
  position: absolute;
  top: 14px;
  right: 14px;
  left: auto;
  z-index: 5;
  margin: 0;
}

/* Keep the same compact visual used by the main page language control. */
.admin-login-card .server-language-toggle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
  width: auto;
  min-width: 68px;
  min-height: 30px;
  padding: 6px 9px;
  border: 1px solid #d9dde2;
  border-radius: 7px;
  background: #fff;
  color: #7a8088;
  text-decoration: none;
  font-size: 9px;
  font-weight: 800;
  line-height: 1;
  box-shadow: 0 1px 2px rgba(20,24,30,.04);
}

.admin-login-card .server-language-toggle svg {
  width: 13px;
  height: 13px;
  flex: 0 0 auto;
  fill: none;
  stroke: #7a8088;
  stroke-width: 1.7;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.admin-login-card .server-language-toggle span:first-of-type {
  color: #1685c7;
}

.admin-login-card .server-language-toggle .next {
  color: #9aa0a7;
}

.admin-login-card .server-language-toggle b {
  color: #c3c7cc;
  font-weight: 700;
}


/* Site text and button color editor */
.button-color-grid{margin-bottom:18px}.button-preview-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:14px;border:1px solid #e1e4e8;border-radius:10px;background:#f8f9fa}.button-preview-row>span{margin-right:auto;color:#727983;font-size:11px;font-weight:800;text-transform:uppercase}.admin-button-preview{min-width:130px;padding:10px 15px;border:1px solid #d8dce1;border-radius:8px;font:inherit;font-size:12px;font-weight:800}.primary-preview{border-color:transparent}.secondary-preview{border-color:#d8dce1}


/* Restore default Box Control colors action */
.box-colors-card .card-title {
  align-items: center;
}
.default-box-colors-button {
  margin-left: auto;
  flex: 0 0 auto;
  min-height: 34px;
  padding: 8px 12px;
  white-space: nowrap;
}
@media (max-width: 720px) {
  .box-colors-card .card-title {
    align-items: flex-start;
    flex-wrap: wrap;
  }
  .default-box-colors-button {
    width: 100%;
    margin-left: 0;
  }
}


/* Styled Default Colors button */
.box-colors-card .default-box-colors-button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin-left: auto !important;
  min-height: 38px !important;
  padding: 9px 14px !important;
  border: 1px solid #cfd4da !important;
  border-radius: 8px !important;
  background: #ffffff !important;
  color: #34383e !important;
  font-family: inherit !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  white-space: nowrap !important;
  cursor: pointer !important;
  box-shadow: 0 1px 2px rgba(20,24,30,.06) !important;
  transition: background .15s ease,border-color .15s ease,transform .15s ease !important;
}
.box-colors-card .default-box-colors-button:hover {
  background: #f4f6f8 !important;
  border-color: #aeb5bd !important;
}
.box-colors-card .default-box-colors-button:active {
  transform: translateY(1px) !important;
}
@media (max-width:720px){
  .box-colors-card .default-box-colors-button{width:100% !important;margin-left:0 !important;}
}
