/* =========================================================
   Làng Ẩn Dật - REBUILD V1 BASE
   ========================================================= */

:root{
  --gold:#f5d589;
  --gold-2:#ffe9ad;
  --gold-deep:#ad7b22;
  --text:#fff6df;
  --muted:rgba(255,246,223,.68);
  --line:rgba(245,213,137,.32);
  --line-soft:rgba(255,255,255,.12);
  --dark:rgba(8,8,14,.72);
  --dark-2:rgba(20,14,18,.82);
  --card:linear-gradient(135deg,rgba(21,19,28,.76),rgba(36,23,20,.60));
  --shadow:0 22px 70px rgba(0,0,0,.48);
  --radius:22px;
  --menu-w:190px;
  --donate-w:340px;
  --font:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}

*{box-sizing:border-box}
html,body{margin:0;min-height:100%;overflow:hidden;background:#05070d;color:var(--text);font-family:var(--font)}
button,input,textarea,select{font:inherit}
button{border:0;cursor:pointer}
button:disabled{opacity:.55;cursor:not-allowed}
img{max-width:100%;display:block}
.hidden{display:none!important}

body{
  text-rendering:geometricPrecision;
  -webkit-font-smoothing:antialiased;
}

.app-shell{min-height:100vh;position:relative;overflow:hidden}

.background-slider{
  position:fixed;
  inset:0;
  z-index:0;
  overflow:hidden;
  background:#05070d;
}

.bg-slide{
  position:absolute;
  inset:0;
  background-size:cover;
  background-position:center center;
  background-repeat:no-repeat;
  opacity:0;
  transform:scale(1.008);
  transition:opacity 1200ms ease, transform 8500ms ease;
  image-rendering:auto;
}

.bg-slide.active{
  opacity:1;
  transform:scale(1);
}

.bg-overlay{
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 52% 46%, rgba(255,230,170,.08), transparent 32%),
    linear-gradient(90deg, rgba(0,0,0,.34), rgba(0,0,0,.14), rgba(0,0,0,.32)),
    linear-gradient(180deg, rgba(0,0,0,.16), rgba(0,0,0,.10), rgba(0,0,0,.22));
  backdrop-filter:none;
}

.menu-btn,.home-action,.small-pill,.close-page,.submit-btn,.icon-btn{
  min-height:42px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.20);
  color:#fff7df;
  background:linear-gradient(180deg,rgba(120,125,140,.86),rgba(52,55,68,.86));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.16),0 8px 20px rgba(0,0,0,.25);
  text-transform:uppercase;
  font-weight:950;
  letter-spacing:.08em;
  font-size:12px;
}
.menu-btn:hover,.home-action:hover,.small-pill:hover,.close-page:hover,.submit-btn:hover{
  transform:translateY(-1px);
  filter:brightness(1.08);
}
.menu-btn.active,.home-action.primary{
  background:linear-gradient(180deg,#fff1a9,#d7a83e);
  color:#201305;
  border-color:rgba(255,239,167,.85);
}

input,textarea{
  width:100%;
  min-height:44px;
  border-radius:14px;
  border:1px solid var(--line);
  color:var(--text);
  background:rgba(10,7,9,.72);
  outline:none;
  padding:0 14px;
}
input:focus,textarea:focus{
  border-color:rgba(255,232,170,.74);
  box-shadow:0 0 0 3px rgba(245,213,137,.14);
}

.glass,.home-donate-card,.page-card,.scrim-frame,.modal-card{
  background:var(--card);
  border:1px solid var(--line);
  border-radius:var(--radius);
  box-shadow:var(--shadow);
  backdrop-filter:blur(14px);
}

.toast{
  position:fixed;left:50%;bottom:24px;transform:translateX(-50%);
  z-index:300;
  max-width:min(92vw,520px);
  padding:12px 16px;
  border-radius:999px;
  border:1px solid var(--line);
  background:rgba(10,8,12,.88);
  color:var(--gold-2);
  font-weight:800;
  box-shadow:0 12px 34px rgba(0,0,0,.45);
}