
*{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent}
:root{--bg:#f5f4f0;--card:#fff;--text:#1a1a1a;--muted:#6b7280;--border:#e5e4e0;--bd:#e5e4e0;
--g-bg:#d1fae5;--g-tx:#065f46;--g-bd:#6ee7b7;--y-bg:#fef3c7;--y-tx:#92400e;--y-bd:#fcd34d;
--r-bg:#fee2e2;--r-tx:#991b1b;--r-bd:#fca5a5;--b-bg:#dbeafe;--b-tx:#1e40af;--b-bd:#93c5fd;
--o-bg:#ffedd5;--o-tx:#9a3412;--o-bd:#fdba74;--p-bg:#ede9fe;--p-tx:#5b21b6;--p-bd:#c4b5fd}
body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--bg);color:var(--text);font-size:15px;line-height:1.5;min-height:100vh}
body.dark{--bg:#111;--card:#1c1c1e;--text:#f5f5f5;--muted:#9ca3af;--border:#2d2d2d;--bd:#2d2d2d;
--g-bg:#064e3b;--g-tx:#6ee7b7;--g-bd:#065f46;--y-bg:#78350f;--y-tx:#fcd34d;--y-bd:#92400e;
--r-bg:#7f1d1d;--r-tx:#fca5a5;--r-bd:#991b1b;--b-bg:#1e3a5f;--b-tx:#93c5fd;--b-bd:#1e40af;
--o-bg:#7c2d12;--o-tx:#fdba74;--o-bd:#9a3412;--p-bg:#3b0764;--p-tx:#c4b5fd;--p-bd:#5b21b6}
#app{max-width:480px;margin:0 auto;padding-bottom:80px;min-height:100vh;display:none}
.screen{display:none;padding:16px 14px 8px}
.screen.act{display:block}
h2.st{font-size:20px;font-weight:800;margin-bottom:14px}
.card{background:var(--card);border-radius:14px;padding:14px;margin-bottom:10px;border:.5px solid var(--border)}
.card.cg{background:var(--g-bg);border-color:var(--g-bd)}
.card.cy{background:var(--y-bg);border-color:var(--y-bd)}
.card.cr{background:var(--r-bg);border-color:var(--r-bd)}
.card.cb{background:var(--b-bg);border-color:var(--b-bd)}
.card.co{background:var(--o-bg);border-color:var(--o-bd)}
.card.cp{background:var(--p-bg);border-color:var(--p-bd)}
input[type=text],input[type=number],input[type=password],input[type=date],select,textarea{
width:100%;padding:10px 12px;border:.5px solid var(--border);border-radius:10px;
background:var(--card);color:var(--text);font-size:14px;font-family:inherit;margin-bottom:8px;outline:none}
input:focus,select:focus,textarea:focus{border-color:#0369a1}
.btn{width:100%;padding:13px;border-radius:12px;border:none;cursor:pointer;font-size:15px;font-weight:700;font-family:inherit;margin-bottom:10px}
.bng{background:#2d6a4f;color:#fff}
.bnb{background:#0369a1;color:#fff}
.bnr{background:#9b2335;color:#fff}
.bnd{background:#374151;color:#fff}
.bno{background:#c2410c;color:#fff}
.bsm{padding:7px 12px;border-radius:9px;border:.5px solid var(--border);background:var(--card);color:var(--text);cursor:pointer;font-size:13px;font-family:inherit;white-space:nowrap}
.tags{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}
.bo{padding:6px 12px;border-radius:20px;border:.5px solid var(--border);background:var(--card);color:var(--muted);cursor:pointer;font-size:13px;font-family:inherit}
.bo.on{background:var(--text);color:var(--bg);border-color:var(--text)}
.bdg{display:inline-flex;align-items:center;padding:2px 8px;border-radius:20px;font-size:11px;font-weight:700}
.dg{background:var(--g-bg);color:var(--g-tx)}.dy{background:var(--y-bg);color:var(--y-tx)}
.dr{background:var(--r-bg);color:var(--r-tx)}.db{background:var(--b-bg);color:var(--b-tx)}
.do{background:#fff7ed;color:#c2410c}.dgr{background:#f3f4f6;color:#374151}
body.dark .do{background:#431407;color:#fdba74}.body.dark .dgr{background:#1f2937;color:#9ca3af}
.alg-pill{display:inline-block;background:var(--r-bg);color:var(--r-tx);border-radius:4px;padding:1px 5px;font-size:10px;font-weight:700;margin-right:3px}
.irow{display:flex;gap:8px;align-items:center;margin-bottom:8px}
.sdiv{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.8px;color:var(--muted);margin:14px 0 8px}
.mu{color:var(--muted);font-size:13px}
.disclaimer{font-size:11px;color:var(--muted);margin-top:10px;padding:8px;border:.5px solid var(--border);border-radius:8px}
.tsum-box{background:var(--card);border:.5px solid var(--border);border-radius:12px;padding:10px;text-align:center}
.tsum-num{font-size:22px;font-weight:800}.tsum-lbl{font-size:11px;color:var(--muted);margin-top:2px}
.fc{display:flex;align-items:center;gap:10px;padding:10px 0;border-bottom:.5px solid var(--border);cursor:pointer}
.fc:hover{opacity:.8}.fc-emoji{font-size:22px;flex-shrink:0}.fc-info{flex:1;min-width:0}
.fc-name{font-weight:700;font-size:14px;margin-bottom:3px}
.fc-meta{display:flex;flex-wrap:wrap;gap:4px;align-items:center;font-size:11px;color:var(--muted)}
/* Release nav: Start, Tracker, Plan, Rezepte, Vorrat, Tagebuch. */
/* nav */
#nav{display:none;position:fixed;bottom:0;left:50%;transform:translateX(-50%);width:100%;max-width:480px;
background:var(--card);border-top:.5px solid var(--border);display:none;z-index:100;padding-bottom:env(safe-area-inset-bottom)}
.ni{flex:1;display:flex;flex-direction:column;align-items:center;padding:8px 1px 6px;cursor:pointer;
background:none;border:none;color:var(--muted);font-family:inherit;font-size:10px;position:relative}
.ni.on{color:var(--text)}.ni .icon{font-size:19px;line-height:1}.ni .lbl{margin-top:2px}
.ni.on .icon{transform:scale(1.1)}
/* header */
#hdr{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:12px 14px 0}
.app-brand{display:flex;align-items:center;gap:9px;min-width:0;flex:1}
.logo-icon,
.brand-icon,
.nav-logo{width:42px;height:42px;max-width:42px;max-height:42px;object-fit:contain;background:transparent;padding:0;margin:0;border:none;box-shadow:none;border-radius:0}
.app-brand-icon{flex:0 0 42px}
.app-brand-copy{min-width:0;line-height:1.1}
.app-brand-title{font-size:15px;font-weight:900;letter-spacing:0;color:var(--text);white-space:nowrap}
.app-brand-sub{font-size:11px;font-weight:700;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:260px}
.app-brand-greeting{font-size:11px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:260px;margin-top:2px}
.app-brand-clock{font-size:10px;color:var(--muted);margin-top:1px}
.ibtn{background:none;border:none;cursor:pointer;font-size:22px}
/* toast */
#toast{position:fixed;bottom:90px;left:50%;transform:translateX(-50%) translateY(20px);
background:#1a1a1a;color:#fff;padding:10px 18px;border-radius:20px;font-size:14px;
opacity:0;transition:all .3s;pointer-events:none;z-index:200;white-space:nowrap}
#toast.show{opacity:1;transform:translateX(-50%) translateY(0)}
body.dark #toast{background:#f5f5f5;color:#1a1a1a}
/* selector modal */
#selector{display:none;position:fixed;inset:0;background:rgba(0,0,0,.5);z-index:300;align-items:flex-end}
#selector[style*="block"]{display:flex!important}
#sel-box{background:var(--card);border-radius:20px 20px 0 0;width:100%;max-width:480px;
margin:0 auto;max-height:80vh;display:flex;flex-direction:column;overflow:hidden}
#sel-head{display:flex;justify-content:space-between;align-items:center;padding:14px 16px 8px;border-bottom:.5px solid var(--border)}
.home-banner{background:linear-gradient(135deg,#2d6a4f,#40916c);color:#fff;border-radius:14px;padding:16px;margin-bottom:10px}
.admin-only{display:none!important}
#auth-screen{display:block;max-width:480px;margin:0 auto;min-height:100vh;padding:22px 14px 80px}
.auth-brand,
.auth-brand-wrap{width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;margin:4px 0 20px;text-align:center}
.auth-brand-logo,.wx-logo-full,.brand-logo-full{width:min(480px,92vw);max-height:120px;height:auto;object-fit:contain;display:block;margin:12px auto 18px;background:transparent;border:none;border-radius:0;padding:0;box-shadow:none}
.auth-brand-sub{font-size:15px;font-weight:900;color:var(--muted);letter-spacing:0}
.auth-logo{font-size:28px;font-weight:900;margin:18px 0 4px}
.auth-sub{font-size:13px;color:var(--muted);margin-bottom:16px;text-align:center}
.btn:disabled,.bsm:disabled{opacity:.72;cursor:not-allowed}
.auth-loading{display:flex;align-items:center;justify-content:center;gap:8px}
.auth-spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.55);border-top-color:#fff;border-radius:999px;display:inline-block;animation:authSpin .75s linear infinite;flex:0 0 16px}
@keyframes authSpin{to{transform:rotate(360deg)}}
.auth-modal{position:fixed;inset:0;z-index:500;display:none;align-items:flex-end;justify-content:center;background:rgba(15,23,42,.45);padding:16px 14px calc(18px + env(safe-area-inset-bottom))}
.auth-modal.show{display:flex}
.auth-modal-card{width:100%;max-width:440px;background:var(--card);border:.5px solid var(--border);border-radius:18px 18px 14px 14px;padding:18px 16px 16px;box-shadow:0 20px 50px rgba(15,23,42,.22)}
.auth-modal-kicker{font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.7px;color:var(--g-tx);margin-bottom:4px}
.auth-modal-card h3{font-size:22px;line-height:1.2;margin-bottom:8px}
.auth-modal-card p{font-size:14px;color:var(--muted);line-height:1.45;margin-bottom:8px}
.auth-modal-actions{display:grid;gap:8px;margin-top:12px}
.auth-msg-card{padding:10px 12px;margin-bottom:8px}
.auth-msg-card p{font-size:13px}
.auth-msg-detail{display:block;font-size:11px;color:var(--muted);margin-top:4px;word-break:break-word}
.onboarding-modal{position:fixed;inset:0;z-index:520;display:none;align-items:flex-end;justify-content:center;background:rgba(15,23,42,.48);padding:16px 14px calc(18px + env(safe-area-inset-bottom))}
.onboarding-modal.show{display:flex}
.onboarding-card{width:100%;max-width:450px;background:var(--card);border:.5px solid var(--border);border-radius:20px 20px 14px 14px;padding:18px 16px 16px;box-shadow:0 22px 55px rgba(15,23,42,.24)}
.onboarding-brand{display:flex;align-items:center;gap:8px;margin-bottom:8px;color:var(--muted);font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.7px}
.onboarding-brand img{width:28px;height:28px;object-fit:contain}
.onboarding-title{font-size:22px;line-height:1.2;margin-bottom:5px;font-weight:900}
.onboarding-sub{font-size:13px;color:var(--muted);line-height:1.45;margin-bottom:12px}
.onboarding-step{border:.5px solid var(--border);border-radius:14px;padding:14px;background:var(--bg);min-height:168px}
.onboarding-step-icon{font-size:36px;margin-bottom:8px}
.onboarding-step h3{font-size:20px;margin-bottom:6px}
.onboarding-step p{font-size:14px;color:var(--muted);line-height:1.45}
.onboarding-progress{display:flex;justify-content:space-between;align-items:center;font-size:12px;color:var(--muted);margin:10px 0}
.onboarding-dots{display:flex;gap:4px}
.onboarding-dot{width:7px;height:7px;border-radius:999px;background:var(--border)}
.onboarding-dot.on{background:#0369a1}
.onboarding-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}
.onboarding-actions .btn,.onboarding-actions .bsm{margin-bottom:0}
.onboarding-optout{display:flex;align-items:flex-start;gap:8px;margin-top:11px;font-size:12px;color:var(--muted);line-height:1.35}
.onboarding-optout input{width:auto;margin:2px 0 0}
body.admin-mode .admin-only{display:block!important}
body.admin-mode .admin-only-flex{display:flex!important}
body:not(.admin-mode) #ki-panel-1, body:not(.admin-mode) #ki-panel-2, body:not(.admin-mode) #ki-panel-3, body:not(.admin-mode) .ki-admin-tabs{display:none!important}

.legal-panel{background:var(--card);border:.5px solid var(--border);border-radius:14px;padding:12px;margin-bottom:12px}
.legal-head{display:flex;align-items:center;gap:9px;margin-bottom:10px}
.legal-icon{width:32px;height:32px;max-width:32px;max-height:32px;object-fit:contain;background:transparent;border-radius:0;flex:0 0 32px}
.legal-kicker{font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.7px;color:var(--muted)}
.legal-brand-title{font-size:14px;font-weight:900;color:var(--text)}
.legal-grid{display:grid;grid-template-columns:1fr;gap:8px}
.legal-card{border:.5px solid var(--border);border-radius:12px;padding:10px;background:var(--bg)}
.legal-card-title{display:flex;align-items:center;gap:8px;margin-bottom:7px}
.legal-card-title h3{font-size:15px;line-height:1.15}
.legal-card-title p{font-size:12px;color:var(--muted);font-weight:700}
.legal-card-icon{width:28px;height:28px;max-width:28px;max-height:28px;object-fit:contain;background:transparent;border-radius:0;flex:0 0 28px}
.legal-copy{font-size:12px;color:var(--muted);line-height:1.45}
.app-footer{max-width:480px;margin:0 auto;padding:10px 14px calc(86px + env(safe-area-inset-bottom));color:var(--muted);font-size:11px}
.app-footer-brand{display:flex;align-items:center;gap:8px;justify-content:center;min-width:0}
.app-footer-brand img{flex:0 0 42px}
.app-footer-links{display:flex;justify-content:center;align-items:center;gap:5px;margin-top:4px}
.app-footer-links button{background:none;border:none;color:var(--muted);font:inherit;cursor:pointer;padding:2px 4px}
.app-footer-links button:hover{color:var(--text)}
body.dark .legal-card{background:#151515}

.onecheck-card{padding:12px;margin-bottom:10px}
.onecheck-card input{margin-bottom:8px}
.onecheck-suggest{display:none;background:rgba(10,20,36,.96);border:1px solid var(--border);border-radius:14px;padding:6px 8px;margin:-2px 0 10px;box-shadow:0 14px 28px rgba(0,0,0,.22)}
.onecheck-suggest-empty{padding:8px 6px 6px}
.onecheck-suggest-empty p{margin:0}
.onecheck-suggest-row{display:flex;align-items:center;gap:8px;width:100%;text-align:left;background:transparent;border:0;border-bottom:.5px solid var(--border);padding:9px 4px;cursor:pointer;color:var(--text)}
.onecheck-suggest-row:last-child{border-bottom:0}
.onecheck-suggest-row:hover{background:rgba(255,255,255,.03)}
.onecheck-suggest-icon{font-size:18px;line-height:1;flex:0 0 auto}
.onecheck-suggest-main{min-width:0;flex:1}
.onecheck-suggest-name{font-size:13px;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.onecheck-suggest-meta{font-size:11px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:2px}
.onecheck-suggest-state{flex:0 0 auto}
.onecheck-btn{margin-bottom:10px;padding:11px}
.onecheck-groups{display:grid;gap:8px}
.onecheck-group-title{font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.7px;color:var(--muted);margin:0 0 5px}
.onecheck-groups .tags{margin-bottom:0}
.onecheck-groups .bo{font-size:12px;padding:6px 10px}

@media (max-width:380px){
  #hdr{padding-top:10px}
  .app-brand{gap:7px}
  .app-brand-sub,.app-brand-greeting{max-width:200px;font-size:10.5px}
  .app-brand-title{font-size:14px}
  .auth-brand-logo{max-width:340px}
}

/* UI-002 Diagnosis UX */
.diag-section-title{font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.7px;color:var(--muted);margin:12px 0 8px}
.diag-card-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:10px}
.diag-card-btn{padding:10px 8px;border:1.5px solid var(--border);border-radius:13px;background:var(--card);cursor:pointer;text-align:left;font-family:inherit;color:var(--text)}
.diag-card-btn.on{border-color:#0369a1;background:var(--b-bg);color:var(--b-tx)}
.diag-cat-scroll{display:flex;gap:6px;overflow-x:auto;padding-bottom:4px;margin-bottom:8px;-webkit-overflow-scrolling:touch}
.diag-cat-scroll .bo{white-space:nowrap;flex:0 0 auto}
.diag-selected-panel{background:var(--card);border:.5px solid var(--border);border-radius:12px;padding:10px;margin:8px 0}
.diag-search-wrap{border:.5px solid var(--border);border-radius:14px;background:var(--card);padding:10px;margin-bottom:8px}

/* TRACKER-002 Meal to Recipe Drawer */
#meal-recipe-modal{display:none;position:fixed;inset:0;background:rgba(0,0,0,.52);z-index:420;align-items:flex-end}
#meal-recipe-modal[style*="block"]{display:flex!important}
#meal-recipe-box{background:var(--card);border-radius:22px 22px 0 0;width:100%;max-width:480px;margin:0 auto;max-height:86vh;overflow:auto;padding:16px;border-top:.5px solid var(--border)}
.meal-recipe-row{display:flex;justify-content:space-between;gap:10px;padding:7px 0;border-bottom:.5px solid var(--border);font-size:13px}
.compat-strip{border-radius:12px;padding:10px;margin:8px 0;font-size:13px;font-weight:700}
.compat-allowed{background:var(--g-bg);color:var(--g-tx);border:1px solid var(--g-bd)}
.compat-caution{background:var(--y-bg);color:var(--y-tx);border:1px solid var(--y-bd)}
.compat-avoid{background:var(--r-bg);color:var(--r-tx);border:1px solid var(--r-bd)}

/* CODE 096 – WUXUAI Premium Dark Gold UI Foundation */
:root{
  --wx-bg:#08111F;
  --wx-bg-2:#0D1B2A;
  --wx-card:#102033;
  --wx-card-2:#142A44;
  --wx-border-soft:rgba(214,168,92,.18);
  --wx-border:rgba(212,175,55,.28);
  --wx-gold:#D6A85C;
  --wx-gold-2:#F5E6B3;
  --wx-text:#E6EEF7;
  --wx-muted:#9AA8B8;
  --wx-success:#9AD66D;
  --wx-danger:#FF6B6B;
}

body.wx-premium{
  --bg:var(--wx-bg);
  --card:var(--wx-card);
  --text:var(--wx-text);
  --muted:var(--wx-muted);
  --border:var(--wx-border);
  --bd:var(--wx-border);
  --g-bg:rgba(154,214,109,.14);
  --g-tx:var(--wx-success);
  --g-bd:rgba(154,214,109,.28);
  --y-bg:rgba(212,175,55,.15);
  --y-tx:var(--wx-gold-2);
  --y-bd:rgba(212,175,55,.34);
  --r-bg:rgba(255,107,107,.14);
  --r-tx:var(--wx-danger);
  --r-bd:rgba(255,107,107,.32);
  --b-bg:rgba(245,230,179,.10);
  --b-tx:var(--wx-gold-2);
  --b-bd:rgba(212,175,55,.24);
  background:
    radial-gradient(circle at top, rgba(214,168,92,.08), transparent 28%),
    linear-gradient(180deg,#050B13,#08111F 42%,#0D1B2A);
  color:var(--wx-text);
}

body.wx-premium #app,
body.wx-premium #auth-screen{
  background:transparent;
}

body.wx-premium #hdr{
  padding-top:14px;
}

body.wx-premium .app-brand-title{
  color:var(--wx-gold);
  letter-spacing:.4px;
}

body.wx-premium .app-brand-icon{
  width:44px;
  height:44px;
  max-width:44px;
  max-height:44px;
}

body.wx-premium .card,
body.wx-premium .wx-card,
body.wx-premium .legal-panel,
body.wx-premium .auth-modal-card,
body.wx-premium .onboarding-card,
body.wx-premium #sel-box,
body.wx-premium #meal-recipe-box{
  background:linear-gradient(180deg,rgba(20,42,68,.92),rgba(12,27,42,.92));
  border:1px solid var(--wx-border);
  border-radius:18px;
  box-shadow:0 12px 30px rgba(0,0,0,.22);
}

body.wx-premium .legal-card,
body.wx-premium .onboarding-step,
body.wx-premium .tsum-box,
body.wx-premium .diag-search-wrap,
body.wx-premium .diag-selected-panel{
  background:rgba(8,21,34,.48);
  border-color:var(--wx-border);
}

body.wx-premium .home-banner{
  background:linear-gradient(135deg,#142A44,#0D1B2A 58%,rgba(212,175,55,.22));
  border:1px solid var(--wx-border);
  box-shadow:0 18px 36px rgba(0,0,0,.22);
}

body.wx-premium .btn.bng,
body.wx-premium .btn.bnb,
body.wx-premium .wx-gold-btn{
  background:linear-gradient(135deg,#F5E6B3,#D4AF37);
  color:#081522;
  border:none;
  font-weight:800;
}

body.wx-premium .btn.bnd,
body.wx-premium .btn.bno,
body.wx-premium .btn.bnr,
body.wx-premium .bsm{
  background:rgba(255,255,255,.06);
  color:var(--wx-text);
  border:1px solid rgba(212,175,55,.25);
}

body.wx-premium input,
body.wx-premium select,
body.wx-premium textarea{
  background:rgba(255,255,255,.06);
  color:var(--wx-text);
  border:1px solid rgba(212,175,55,.25);
}

body.wx-premium input::placeholder,
body.wx-premium textarea::placeholder{
  color:rgba(230,238,247,.55);
}

body.wx-premium input:focus,
body.wx-premium select:focus,
body.wx-premium textarea:focus{
  border-color:var(--wx-gold);
  box-shadow:0 0 0 3px rgba(212,175,55,.12);
}

body.wx-premium .bo{
  background:rgba(255,255,255,.05);
  border-color:rgba(212,175,55,.24);
  color:var(--wx-muted);
}

body.wx-premium .bo.on{
  background:rgba(212,175,55,.16);
  border-color:var(--wx-gold);
  color:var(--wx-gold-2);
}

body.wx-premium .bdg.dgr,
body.wx-premium .dgr{
  background:rgba(255,255,255,.08);
  color:var(--wx-muted);
}

body.wx-premium .bdg.do,
body.wx-premium .do{
  background:rgba(212,175,55,.14);
  color:var(--wx-gold-2);
}

body.wx-premium #nav{
  background:rgba(8,21,34,.94);
  border-top:1px solid var(--wx-border);
  backdrop-filter:blur(16px);
}

body.wx-premium .ni{
  color:var(--wx-muted);
}

body.wx-premium .ni.on{
  color:var(--wx-gold);
}

.wx-nav-icon{
  width:28px;
  height:28px;
  display:flex;
  align-items:center;
  justify-content:center;
  line-height:1;
  flex:0 0 28px;
}

.wx-nav-icon img{
  width:28px;
  height:28px;
  object-fit:contain;
  opacity:.9;
  filter:none;
  border-radius:8px;
  display:block;
}

.ni.on .wx-nav-icon img{
  opacity:1;
  filter:none;
  box-shadow:0 0 0 1px rgba(212,175,55,.34),0 5px 12px rgba(0,0,0,.22);
}

.wx-menu-card-icon{
  width:36px;
  height:36px;
  object-fit:contain;
  display:block;
  margin:0 auto;
  border-radius:10px;
}

body.wx-premium .app-footer{
  color:var(--wx-muted);
}

body.wx-premium .app-footer-links button:hover{
  color:var(--wx-gold);
}

.wx-progress-card{
  display:none;
}

body.wx-premium .wx-progress-card{
  display:block;
  margin-bottom:10px;
}

.wx-progress-inner{
  display:flex;
  align-items:center;
  gap:14px;
}

.wx-progress-ring{
  width:112px;
  height:112px;
  border-radius:50%;
  flex:0 0 112px;
  display:grid;
  place-items:center;
  background:
    radial-gradient(circle at center, var(--wx-card) 0 56%, transparent 57%),
    conic-gradient(var(--wx-gold) var(--wx-progress,0%), rgba(255,255,255,.08) 0);
  border:1px solid rgba(212,175,55,.22);
  box-shadow:inset 0 0 24px rgba(212,175,55,.08),0 12px 24px rgba(0,0,0,.2);
}

.wx-progress-ring strong{
  color:var(--wx-gold-2);
  font-size:22px;
  line-height:1;
}

.wx-progress-copy p:first-child{
  color:var(--wx-gold);
  font-size:12px;
  font-weight:900;
  letter-spacing:.7px;
  text-transform:uppercase;
  margin-bottom:3px;
}

.wx-progress-copy h3{
  font-size:18px;
  line-height:1.2;
  margin-bottom:4px;
}

.wx-progress-copy p{
  color:var(--wx-muted);
  font-size:12px;
}



/* CODE 107 – UI Polish + Favicon + Onboarding Icon Fix */
body.wx-premium #plan-box{
  background:linear-gradient(135deg,#F8FAFC,#FFF7DC) !important;
  border:1px solid rgba(214,168,92,.45) !important;
  color:#0f172a !important;
  box-shadow:0 16px 34px rgba(0,0,0,.24) !important;
}
body.wx-premium #plan-box p,
body.wx-premium #plan-box #plan-title,
body.wx-premium #plan-box #plan-sub{
  color:#0f172a !important;
}
body.wx-premium #plan-box [style*="var(--muted)"]{
  color:#334155 !important;
}
body.wx-premium #plan-box .bdg,
body.wx-premium #plan-badge{
  background:rgba(214,168,92,.24) !important;
  color:#111827 !important;
  border:1px solid rgba(214,168,92,.38) !important;
}
body.wx-premium #plan-meter,
body.wx-premium #plan-meter p{
  color:#334155 !important;
}
body.wx-premium #plan-meter > div{
  background:rgba(16,185,129,.14) !important;
  border:1px solid rgba(16,185,129,.18);
}
body.wx-premium #customer-account-info.card,
body.wx-premium #account-management-panel.card{
  background:linear-gradient(180deg,rgba(20,42,68,.96),rgba(12,27,42,.96)) !important;
  color:var(--wx-text) !important;
}
body.wx-premium #customer-account-info p,
body.wx-premium #account-management-panel p,
body.wx-premium #account-session-info p{
  color:rgba(230,238,247,.90) !important;
}
body.wx-premium #account-management-panel .tsum-box{
  background:rgba(255,255,255,.055) !important;
  border:1px solid rgba(214,168,92,.18) !important;
}
body.wx-premium .wx-onboarding-icon{
  width:52px;
  height:52px;
  object-fit:contain;
  display:block;
  border-radius:14px;
  background:rgba(5,11,19,.55);
  border:1px solid rgba(214,168,92,.18);
  box-shadow:0 0 12px rgba(214,168,92,.18);
}
body.wx-premium .onboarding-step-icon{
  font-size:0 !important;
  margin-bottom:10px;
}
body.wx-premium .onboarding-step h3{
  color:rgba(255,255,255,.96) !important;
}
body.wx-premium .onboarding-step p,
body.wx-premium .onboarding-sub,
body.wx-premium .onboarding-optout,
body.wx-premium .onboarding-progress{
  color:rgba(255,255,255,.74) !important;
}
body.wx-premium .onboarding-dot.on{
  background:var(--wx-gold) !important;
  box-shadow:0 0 8px rgba(214,168,92,.55);
}
body.wx-premium .wx-menu-card{
  background:rgba(255,255,255,.045) !important;
  border:1px solid rgba(214,168,92,.16) !important;
}
body.wx-premium .wx-menu-card div:not([style*="font-size:11px"]){
  color:rgba(255,255,255,.94) !important;
  font-weight:700 !important;
}
body.wx-premium .wx-menu-card div[style*="font-size:11px"],
body.wx-premium .wx-menu-card .mu{
  color:rgba(255,255,255,.72) !important;
}
body.wx-premium .wx-menu-card-icon,
body.wx-premium .wx-nav-icon img,
body.wx-premium .logo-icon,
body.wx-premium .brand-icon,
body.wx-premium .nav-logo,
body.wx-premium .app-brand-icon{
  background:transparent !important;
  box-shadow:none;
}
body.wx-premium .app-footer img{
  background:transparent !important;
  border-radius:6px;
}

/* CODE 109B – Master Icon System Integration Correction */
.wx-title{
  display:flex;
  align-items:center;
  gap:10px;
}

.wx-title-icon{
  width:28px;
  height:28px;
  flex:0 0 28px;
  object-fit:contain;
  border-radius:9px;
  display:block;
}

.page-hero-icon,
.wx-page-hero-icon,
.module-hero-icon{
  width:72px;
  height:72px;
  max-width:72px;
  max-height:72px;
  object-fit:contain;
  border-radius:14px;
  display:block;
}

@media (min-width:720px){
  .page-hero-icon,
  .wx-page-hero-icon,
  .module-hero-icon{
    width:96px;
    height:96px;
    max-width:96px;
    max-height:96px;
  }
}

.wx-section-title{
  display:flex;
  align-items:center;
  gap:8px;
}

.wx-section-icon{
  width:20px;
  height:20px;
  flex:0 0 20px;
  object-fit:contain;
  border-radius:7px;
  display:block;
}

.wx-inline-icon{
  width:20px;
  height:20px;
  flex:0 0 20px;
  object-fit:contain;
  border-radius:7px;
  display:inline-block;
  vertical-align:middle;
  margin-right:7px;
}

.wx-card-heading{
  display:flex;
  align-items:center;
  gap:8px;
  font-weight:800;
  font-size:14px;
  color:var(--b-tx);
  margin-bottom:4px;
}

.wx-menu-card{
  border:.5px solid var(--border);
  cursor:pointer;
  text-align:center;
  padding:9px 6px;
  margin:0;
  min-height:76px;
}

.wx-menu-card-title{
  font-weight:800;
  font-size:13px;
  margin-top:5px;
  line-height:1.15;
}

.wx-menu-card-sub{
  font-size:11px;
  color:var(--muted);
  margin-top:2px;
  line-height:1.2;
}

body.wx-premium .wx-title-icon,
body.wx-premium .wx-section-icon,
body.wx-premium .wx-inline-icon,
body.wx-premium .wx-menu-card-icon,
body.wx-premium .wx-nav-icon img,
body.wx-premium .wx-onboarding-icon{
  background:#08111F;
  border:1px solid rgba(214,168,92,.34);
  box-shadow:0 0 10px rgba(214,168,92,.18);
}

body.wx-premium .wx-menu-card{
  padding:9px 6px !important;
  min-height:76px !important;
}

body.wx-premium .wx-menu-card-icon{
  width:36px !important;
  height:36px !important;
  border-radius:10px !important;
}

body.wx-premium .wx-nav-icon{
  width:28px !important;
  height:28px !important;
}

body.wx-premium .wx-nav-icon img{
  width:28px !important;
  height:28px !important;
  border-radius:8px !important;
  opacity:.9;
}

body.wx-premium .ni.on .wx-nav-icon img{
  opacity:1;
  box-shadow:0 0 0 1px rgba(214,168,92,.42),0 0 12px rgba(214,168,92,.24);
}

body.wx-premium .ni.on .icon{
  transform:none;
}

body.wx-premium .wx-menu-card-title{
  color:rgba(255,255,255,.94) !important;
}

body.wx-premium .wx-menu-card-sub{
  color:rgba(255,255,255,.72) !important;
}
