/* Manifest Vault — cosmic / abundance theme */
:root{
  --bg-deep:#0b0a1f;
  --bg-mid:#161233;
  --bg-card:#1c1840;
  --gold:#e8c26a;
  --gold-bright:#ffd97a;
  --purple:#8b6fd6;
  --pink:#d97aa8;
  --text:#f1ecff;
  --text-dim:#b6aede;
  --success:#7fd8a0;
  --danger:#e88a8a;
  --border:rgba(232,194,106,0.18);
  --radius:14px;
}

*{box-sizing:border-box;}
html,body{margin:0;padding:0;}
body{
  font-family:'Segoe UI',system-ui,-apple-system,sans-serif;
  background:radial-gradient(ellipse at top,#20194a 0%,var(--bg-deep) 55%,#07061494 100%) fixed;
  color:var(--text);
  min-height:100vh;
  display:flex;
  flex-direction:column;
}
.mv-container{max-width:1100px;margin:0 auto;padding:0 20px;}

a{color:var(--gold-bright);text-decoration:none;}
a:hover{text-decoration:underline;}

/* Nav */
.mv-nav{
  background:rgba(11,10,31,0.85);
  backdrop-filter:blur(8px);
  border-bottom:1px solid var(--border);
  position:sticky;top:0;z-index:50;
}
.mv-nav-inner{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;}
.mv-brand{font-size:1.3rem;font-weight:700;color:var(--gold-bright);text-decoration:none;letter-spacing:.3px;}
.mv-nav-links{display:flex;align-items:center;gap:18px;flex-wrap:wrap;}
.mv-nav-links a{color:var(--text-dim);font-size:.95rem;text-decoration:none;}
.mv-nav-links a:hover{color:var(--gold-bright);}
.mv-btn-nav{
  background:linear-gradient(135deg,var(--gold),var(--pink));
  color:#211738 !important;
  padding:8px 16px;border-radius:30px;font-weight:600;
}
.mv-burger{display:none;background:none;border:none;color:var(--text);font-size:1.4rem;cursor:pointer;}

.mv-main{flex:1;padding:34px 0 60px;}

/* Flash */
.mv-flash{padding:12px 18px;border-radius:10px;margin-bottom:20px;font-size:.95rem;}
.mv-flash-success{background:rgba(127,216,160,0.12);border:1px solid var(--success);color:var(--success);}
.mv-flash-error{background:rgba(232,138,138,0.12);border:1px solid var(--danger);color:var(--danger);}

/* Hero */
.mv-hero{text-align:center;padding:60px 20px 30px;}
.mv-hero h1{font-size:2.6rem;margin:0 0 14px;background:linear-gradient(135deg,var(--gold-bright),var(--pink));-webkit-background-clip:text;background-clip:text;color:transparent;}
.mv-hero p{color:var(--text-dim);font-size:1.15rem;max-width:600px;margin:0 auto 28px;}
.mv-hero-actions{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;}

.mv-stars{position:relative;overflow:hidden;}

/* Buttons */
.mv-btn{
  display:inline-block;padding:12px 26px;border-radius:30px;border:none;cursor:pointer;
  font-weight:600;font-size:1rem;text-decoration:none;
}
.mv-btn-primary{background:linear-gradient(135deg,var(--gold),var(--pink));color:#211738;}
.mv-btn-primary:hover{filter:brightness(1.08);text-decoration:none;}
.mv-btn-outline{background:transparent;border:1px solid var(--border);color:var(--text);}
.mv-btn-outline:hover{border-color:var(--gold);text-decoration:none;}
.mv-btn-danger{background:transparent;border:1px solid var(--danger);color:var(--danger);}
.mv-btn-sm{padding:7px 14px;font-size:.85rem;}
.mv-btn-block{display:block;width:100%;text-align:center;}

/* Cards & grids */
.mv-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:24px;}
.mv-grid{display:grid;gap:20px;}
.mv-grid-3{grid-template-columns:repeat(3,1fr);}
.mv-grid-4{grid-template-columns:repeat(4,1fr);}
@media(max-width:900px){.mv-grid-3,.mv-grid-4{grid-template-columns:repeat(2,1fr);}}
@media(max-width:600px){.mv-grid-3,.mv-grid-4{grid-template-columns:1fr;}}

.mv-section-title{font-size:1.4rem;margin:0 0 18px;color:var(--gold-bright);}
.mv-section{margin-bottom:40px;}

/* How it works */
.mv-how-step{text-align:center;padding:20px;}
.mv-how-step .mv-num{
  width:48px;height:48px;border-radius:50%;
  background:linear-gradient(135deg,var(--gold),var(--purple));
  color:#1a1533;font-weight:700;display:flex;align-items:center;justify-content:center;
  margin:0 auto 14px;font-size:1.2rem;
}

/* Forms */
.mv-form-wrap{max-width:440px;margin:0 auto;}
.mv-form-group{margin-bottom:18px;}
.mv-form-group label{display:block;margin-bottom:6px;color:var(--text-dim);font-size:.9rem;}
.mv-form-group input,.mv-form-group select,.mv-form-group textarea{
  width:100%;padding:11px 14px;border-radius:8px;border:1px solid var(--border);
  background:rgba(255,255,255,0.04);color:var(--text);font-size:1rem;font-family:inherit;
}
.mv-form-group input:focus,.mv-form-group select:focus,.mv-form-group textarea:focus{
  outline:none;border-color:var(--gold);
}
.mv-form-group textarea{resize:vertical;min-height:90px;}
.mv-form-row{display:flex;gap:14px;}
.mv-form-row .mv-form-group{flex:1;}
.mv-form-foot{text-align:center;margin-top:16px;color:var(--text-dim);font-size:.9rem;}
.mv-range-value{color:var(--gold-bright);font-weight:700;}

/* Stat tiles */
.mv-stat{text-align:center;}
.mv-stat .mv-stat-num{font-size:2.1rem;font-weight:700;color:var(--gold-bright);}
.mv-stat .mv-stat-label{color:var(--text-dim);font-size:.85rem;text-transform:uppercase;letter-spacing:.5px;}

/* Wish card */
.mv-wish-card{position:relative;overflow:hidden;display:flex;flex-direction:column;}
.mv-wish-img{width:100%;height:150px;object-fit:cover;border-radius:10px;margin-bottom:14px;background:rgba(255,255,255,0.04);}
.mv-wish-img-placeholder{
  width:100%;height:150px;border-radius:10px;margin-bottom:14px;
  background:linear-gradient(135deg,rgba(139,111,214,.25),rgba(217,122,168,.25));
  display:flex;align-items:center;justify-content:center;font-size:2.2rem;
}
.mv-badge{display:inline-block;padding:3px 10px;border-radius:20px;font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.4px;}
.mv-badge-active{background:rgba(139,111,214,.2);color:#c3b3f2;}
.mv-badge-achieved{background:rgba(127,216,160,.18);color:var(--success);}
.mv-badge-paused{background:rgba(255,255,255,.08);color:var(--text-dim);}
.mv-wish-title{font-size:1.15rem;margin:4px 0 6px;}
.mv-wish-meta{color:var(--text-dim);font-size:.85rem;margin-bottom:10px;}
.mv-belief-bar{height:6px;border-radius:4px;background:rgba(255,255,255,.08);overflow:hidden;margin:8px 0 14px;}
.mv-belief-fill{height:100%;background:linear-gradient(90deg,var(--purple),var(--gold-bright));}
.mv-wish-actions{margin-top:auto;display:flex;gap:8px;flex-wrap:wrap;}

/* Gratitude / affirmation list */
.mv-entry{border-bottom:1px solid var(--border);padding:16px 0;}
.mv-entry:last-child{border-bottom:none;}
.mv-entry-date{color:var(--gold-bright);font-weight:600;font-size:.85rem;margin-bottom:6px;}
.mv-entry-text{color:var(--text);line-height:1.5;}
.mv-quote{font-style:italic;color:var(--text-dim);border-left:3px solid var(--gold);padding-left:14px;margin:18px 0;}

/* Visualize timer */
.mv-timer-wrap{text-align:center;padding:40px 20px;}
.mv-timer-circle{
  width:220px;height:220px;border-radius:50%;margin:0 auto 24px;
  display:flex;align-items:center;justify-content:center;
  border:4px solid var(--border);position:relative;
  background:radial-gradient(circle,rgba(139,111,214,.15),transparent 70%);
}
.mv-timer-num{font-size:3.2rem;font-weight:700;color:var(--gold-bright);}
.mv-timer-circle.pulsing{animation:mv-pulse 1s ease-in-out infinite;}
@keyframes mv-pulse{0%,100%{box-shadow:0 0 0 0 rgba(232,194,106,.25);}50%{box-shadow:0 0 0 18px rgba(232,194,106,0);}}

/* Achieved wall */
.mv-achieved-card{text-align:center;position:relative;}
.mv-achieved-card::before{content:"🏆";position:absolute;top:14px;right:14px;font-size:1.3rem;}

/* Empty state */
.mv-empty{text-align:center;padding:50px 20px;color:var(--text-dim);}
.mv-empty .mv-empty-icon{font-size:2.6rem;margin-bottom:12px;}

/* Streak banner */
.mv-streak{
  display:flex;align-items:center;gap:14px;background:linear-gradient(135deg,rgba(232,194,106,.12),rgba(217,122,168,.12));
  border:1px solid var(--border);border-radius:var(--radius);padding:18px 22px;margin-bottom:28px;
}
.mv-streak .mv-streak-fire{font-size:2rem;}
.mv-streak-num{font-size:1.4rem;font-weight:700;color:var(--gold-bright);}

/* Footer */
.mv-footer{border-top:1px solid var(--border);padding:26px 0;text-align:center;color:var(--text-dim);font-size:.85rem;}
.mv-footer-sub{margin-top:4px;opacity:.7;}

@media(max-width:820px){
  .mv-nav-links{display:none;position:absolute;top:100%;left:0;right:0;background:var(--bg-deep);flex-direction:column;padding:16px 20px;border-bottom:1px solid var(--border);}
  .mv-nav-links.open{display:flex;}
  .mv-burger{display:block;}
  .mv-hero h1{font-size:2rem;}
  .mv-form-row{flex-direction:column;gap:0;}
}
