/* ============================================================
   WAnee Glass UI - opt-in glassmorphism layer (app + admin).
   Loaded LAST in Page::head (after site.css + admin.css) when
   the wanee_glass cookie / ?glass=1 flag is on.
   Dusty-white base, Vaani-logo green actions, CSS-only glass.
   ============================================================ */

/* brand re-map for the console only (body.admin outranks :root) */
body.admin{
  --paper:#E9E8DF;
  --paper-2:#E1E0D6;
  --surface:rgba(255,255,255,.58);
  --green:#0E7A46;
  --green-deep:#0A5C36;
  --green-ink:#083D26;
  --ca-red:#0E7A46;
  --ca-red-d:#0A5C36;
  --line:rgba(20,40,30,.14);
  --line-soft:rgba(20,40,30,.08);
  --glass-brd:rgba(255,255,255,.65);
  --glass-shadow:0 8px 28px rgba(16,44,32,.10);
}

/* dusty-white base with a faint brand-tinted depth for the blur to catch */
body.admin{
  background:
    radial-gradient(1100px 500px at 85% -10%, rgba(14,122,70,.10), transparent 60%),
    radial-gradient(900px 480px at -10% 100%, rgba(14,122,70,.08), transparent 55%),
    #E9E8DF;
  background-attachment:fixed;
}

/* ---------- sidebar: light frosted glass (Apple-style) ---------- */
body.admin .side{
  background:rgba(255,255,255,.55);
  -webkit-backdrop-filter:blur(20px) saturate(1.4);
  backdrop-filter:blur(20px) saturate(1.4);
  border-right:1px solid rgba(20,40,30,.10);
  color:#5a6a60;
}
body.admin .side .brand{border-bottom-color:rgba(20,40,30,.08);color:#1d2b22;position:relative;z-index:3;background:rgba(250,250,247,.92)}
body.admin .side .brand em{color:#0A5C36}
body.admin .side-sec{color:#8a988f;padding:18px 14px 8px;margin:0;line-height:1.3;white-space:nowrap;overflow:visible}
body.admin .side-nav a{color:#46564c}
body.admin .side-nav a svg{opacity:.75}
body.admin .side-nav a:hover{background:rgba(14,122,70,.08);color:#1d2b22}
body.admin .side-nav a.on{
  background:rgba(14,122,70,.12);
  border-left:3px solid var(--green);
  color:#0A5C36;
}
body.admin .side .side-foot{border-top-color:rgba(20,40,30,.08);color:#8a988f}
body.admin .side-foot--acct{border-top:1px solid rgba(20,40,30,.08)}
body.admin .acct-btn:hover{background:rgba(14,122,70,.08)}
body.admin .acct-avatar{background:#0A5C36;color:#FBF6EA}
body.admin .acct-meta b{color:#1d2b22}
body.admin .acct-pop{background:rgba(255,255,255,.94);-webkit-backdrop-filter:blur(20px) saturate(1.4);backdrop-filter:blur(20px) saturate(1.4);border:1px solid rgba(20,40,30,.10);box-shadow:0 12px 32px rgba(20,40,30,.16)}
body.admin .acct-pop a{color:#46564c}
body.admin .acct-pop a:hover{background:rgba(14,122,70,.08);color:#1d2b22}
body.admin .acct-pop a.on{background:rgba(14,122,70,.12);color:#0A5C36;font-weight:600}
body.admin .acct-div{background:rgba(20,40,30,.10)}
body.admin .side-foot b{color:#0A5C36}
body.admin .side-nav{scrollbar-color:rgba(20,40,30,.18) transparent}
body.admin .side-nav::-webkit-scrollbar-thumb{background:rgba(20,40,30,.18)}

/* ---------- topbar: frosted white ---------- */
body.admin .topbar{
  background:rgba(255,255,255,.55);
  -webkit-backdrop-filter:blur(16px) saturate(1.2);
  backdrop-filter:blur(16px) saturate(1.2);
  border-bottom:1px solid var(--line);
}

/* ---------- glass surfaces ---------- */
body.admin .kpi,
body.admin .panel,
body.admin .int-card,
body.admin .kb-item,
body.admin .ca-card,
body.admin .ca-col,
body.admin .ca-modal,
body.admin .ca-tbl,
body.admin .searchbox{
  background:rgba(255,255,255,.58);
  -webkit-backdrop-filter:blur(14px) saturate(1.15);
  backdrop-filter:blur(14px) saturate(1.15);
  border:1px solid var(--glass-brd);
}
body.admin .ca-col{background:rgba(255,255,255,.42)}
body.admin .ca-modal{background:rgba(255,255,255,.82);box-shadow:var(--glass-shadow)}
body.admin .ca-modal-bg{background:rgba(20,40,30,.35);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}
body.admin .tbl th, body.admin .ca-tbl th{background:rgba(255,255,255,.35)}
body.admin .tbl tr:hover td, body.admin .ca-tbl tr:hover td{background:rgba(14,122,70,.05)}

/* ---------- ALL action buttons: Vaani-logo green glass ---------- */
body.admin .btn-primary,
body.admin .ca-btn.red,
body.admin button[type=submit],
body.admin .tbtn,
body.admin .ca-btn,
body.admin .ca-tabs button.on{
  background:rgba(14,122,70,.88);
  -webkit-backdrop-filter:blur(8px);
  backdrop-filter:blur(8px);
  border:1px solid rgba(255,255,255,.35);
  color:#fff;
  box-shadow:0 4px 14px rgba(14,122,70,.28), inset 0 1px 0 rgba(255,255,255,.25);
}
body.admin .btn-primary:hover,
body.admin .ca-btn.red:hover,
body.admin button[type=submit]:hover,
body.admin .tbtn:hover,
body.admin .ca-btn:hover{
  background:rgba(10,92,54,.94);
  box-shadow:0 6px 18px rgba(14,122,70,.36), inset 0 1px 0 rgba(255,255,255,.25);
  border-color:rgba(255,255,255,.45);
  color:#fff;
}
body.admin .ca-tabs button{color:#3d4a43;border-bottom-color:transparent;background:none;box-shadow:none}
body.admin .ca-tabs button.on{color:var(--green);border-bottom:3px solid var(--green);border-radius:0;border-left:0;border-right:0;border-top:0}
body.admin .ca-btn[disabled]{opacity:.5}
body.admin .avatar{background:var(--green)}

/* ---------- inputs: frosted ---------- */
body.admin .ca-bar select, body.admin .ca-bar input,
body.admin .ca input, body.admin .ca select, body.admin .ca textarea,
body.admin .fbar select, body.admin .fbar input,
body.admin .ca-grid input, body.admin .ca-grid select{
  background:rgba(255,255,255,.65);
  border:1px solid var(--line);
}
body.admin .ca input:focus, body.admin .ca select:focus, body.admin .fbar input:focus, body.admin .fbar select:focus{
  outline:2px solid rgba(14,122,70,.45);outline-offset:1px;
}

/* ---------- misc brand points ---------- */
body.admin .ca-col.over{outline:2px dashed var(--green)}
body.admin .bars .b i{background:var(--green)}
body.admin .kpi .delta.up{color:var(--green)}
body.admin .btn-ghost{border-color:var(--green);color:var(--green);background:rgba(255,255,255,.4)}
body.admin .btn-ghost:hover{background:var(--green);color:#fff}
body.admin .btn-light{background:rgba(255,255,255,.55);border-color:var(--line)}

/* ---------- Gilbert 11:53 tweaks: original logo (no on-dark glow), tighter nav rhythm ---------- */
body.admin .side .brand-logo--on-dark{filter:none}
body.admin .side-nav{padding:10px 12px}
body.admin .side-nav a{padding:6px 12px;gap:9px;margin-bottom:1px}

/* ---------- auth pages (login/signup/forgot) ---------- */
body.auth-body{
  background:
    radial-gradient(1100px 500px at 85% -10%, rgba(14,122,70,.10), transparent 60%),
    radial-gradient(900px 480px at -10% 100%, rgba(14,122,70,.08), transparent 55%),
    #E9E8DF;
  background-attachment:fixed;
}
body.auth-body .auth-top{
  background:rgba(255,255,255,.55);
  -webkit-backdrop-filter:blur(16px) saturate(1.2);
  backdrop-filter:blur(16px) saturate(1.2);
  border-bottom:1px solid rgba(20,40,30,.12);
}
body.auth-body .auth-main .card{
  background:rgba(255,255,255,.62);
  -webkit-backdrop-filter:blur(18px) saturate(1.3);
  backdrop-filter:blur(18px) saturate(1.3);
  border:1px solid rgba(255,255,255,.65);
}
