/* === GOALS === */
.goals { background: linear-gradient(180deg, #f3f0ff 0%, #ebe5ff 100%); }
.goals__layout { display: grid; grid-template-columns: 1fr 1.5fr; gap: 32px; margin-top: 40px; align-items: start; }
.goals__form { background: #fff; border-radius: var(--radius); padding: 32px; box-shadow: 0 4px 28px rgba(108,71,255,0.10); }
.goals__field { display: flex; flex-direction: column; gap: 6px; margin-bottom: 16px; }
.goals__field label { font-size: 0.78rem; font-weight: 700; color: var(--text2); text-transform: uppercase; letter-spacing: 0.06em; }
.goals__field input { border: 1.5px solid #ddd6ff; border-radius: 10px; padding: 10px 14px; font-size: 0.95rem; font-family: inherit; color: var(--text); outline: none; transition: border-color 0.18s; }
.goals__field input:focus { border-color: var(--accent); }
.goals__calc-btn { width: 100%; padding: 13px; background: var(--accent); color: #fff; border: none; border-radius: 12px; font-size: 0.9rem; font-weight: 800; cursor: pointer; letter-spacing: 0.04em; transition: background 0.18s, transform 0.12s; }
.goals__calc-btn:hover { background: var(--accent2); transform: translateY(-1px); }
.goals__result { background: #fff; border-radius: var(--radius); padding: 32px; box-shadow: 0 4px 28px rgba(108,71,255,0.10); min-height: 260px; display: flex; flex-direction: column; gap: 14px; }
.goals__result-head { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.goals__result-empty { display: flex; align-items: center; justify-content: space-between; gap: 18px; flex: 1; color: var(--text2); text-align: left; font-size: 0.9rem; }
.goals__result-empty p { margin: 6px 0 0; }
.goals__result-icon { font-size: 2.8rem; flex-shrink: 0; }
.goals__plan-header { font-size: 1.1rem; font-weight: 800; color: var(--text); }
.goals__plan-card { background: linear-gradient(90deg, var(--accent), #7b5cf5); border-radius: 14px; padding: 18px 20px; color: #fff; }
.goals__plan-card h4 { margin: 0 0 2px; font-size: 0.72rem; text-transform: uppercase; opacity: 0.75; letter-spacing: 0.08em; }
.goals__plan-card strong { font-size: 1.6rem; font-weight: 900; }
.goals__plan-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.goals__plan-item { background: #f0eaff; border-radius: 12px; padding: 12px 14px; }
.goals__plan-item h4 { font-size: 0.68rem; text-transform: uppercase; color: var(--text2); margin: 0 0 4px; letter-spacing: 0.07em; }
.goals__plan-item strong { font-size: 1rem; font-weight: 800; color: var(--text); }
.goals__timeline { background: #f0eaff; border-radius: 12px; padding: 14px 16px; }
.goals__timeline h4 { font-size: 0.68rem; text-transform: uppercase; color: var(--text2); margin: 0 0 8px; letter-spacing: 0.07em; }
.goals__progress-bar { height: 10px; background: #ddd5ff; border-radius: 10px; overflow: hidden; margin-bottom: 5px; }
.goals__progress-fill { height: 100%; background: linear-gradient(90deg, var(--accent), var(--purple), #f59e0b); border-radius: 10px; transition: width 0.6s ease; }
.goals__progress-label { display: flex; justify-content: space-between; font-size: 0.7rem; color: var(--text2); }
.goals__tips { background: linear-gradient(135deg, #ede7ff, #e8e0ff); border-radius: 12px; padding: 14px 16px; }
.goals__tips h4 { font-size: 0.68rem; text-transform: uppercase; color: var(--accent); margin: 0 0 8px; letter-spacing: 0.07em; }
.goals__tips ul { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 5px; }
.goals__tips li { font-size: 0.8rem; color: var(--text); display: flex; gap: 8px; }
.goals__tips li::before { content: '✓'; color: var(--accent); font-weight: 900; flex-shrink: 0; }
.goals__list { margin-top: 28px; display: flex; flex-direction: column; gap: 12px; }
.goals__item { background: #fff; border-radius: 12px; padding: 16px 20px; box-shadow: 0 2px 12px rgba(108,71,255,0.08); display: flex; align-items: center; gap: 16px; }
.goals__item-name { font-weight: 800; flex: 1; }
.goals__item-monthly { font-size: 0.85rem; color: var(--accent); font-weight: 700; }
.goals__item-meta { font-size: 0.8rem; color: var(--text2); }
.goals__item-del { background: none; border: none; cursor: pointer; color: #ccc; font-size: 1rem; padding: 2px 6px; transition: color 0.15s; line-height: 1; }
.goals__item-del:hover { color: #e05050; }

/* === LOCKED TOOLS === */
.tool-locked-wrap { position: relative; border-radius: 24px; overflow: hidden; }
#habit-price .habitcalc__locked-wrap.tool--unlocked { overflow: visible; }
.tool-lock-overlay { position: absolute; inset: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 12px; padding: 28px; text-align: center; opacity: 0; pointer-events: none; transition: opacity 0.28s ease; z-index: 3; background: linear-gradient(180deg, rgba(10,20,40,0.26), rgba(10,20,40,0.58)); backdrop-filter: blur(4px); }
.tool-lock-overlay__icon { font-size: 3rem; filter: drop-shadow(0 4px 14px rgba(0,0,0,0.35)); }
.tool-lock-overlay__title { color: #fff; font-size: 1.15rem; font-weight: 900; margin: 0; }
.tool-lock-overlay__text { max-width: 480px; color: rgba(255,255,255,0.78); font-size: 0.9rem; line-height: 1.6; margin: 0; }
.tool-locked-wrap:hover .tool-lock-overlay { opacity: 1; pointer-events: auto; }
.tool--unlocked .tool-lock-overlay { display: none !important; }

/* === HABIT CALCULATOR === */
.habitcalc { background: linear-gradient(180deg, #f0eeff 0%, #e8e0ff 100%); }
.habitcalc__sub { max-width: 760px; margin: 14px auto 0; text-align: center; font-size: 1rem; }
.habitcalc__locked-wrap { margin-top: 38px; }
.habitcalc__panel { display: grid; grid-template-columns: minmax(0, 400px) minmax(340px, 1fr); gap: 28px; padding: 28px; border-radius: 24px; background: linear-gradient(145deg, #0A1428 0%, #112250 55%, #0A1428 100%); border: 1px solid rgba(60,80,125,0.15); box-shadow: 0 20px 54px rgba(12,16,42,0.26); transition: filter 0.28s ease; }
.habitcalc__locked-wrap:hover .habitcalc__panel { filter: blur(3px) brightness(0.62); }
.tool--unlocked .habitcalc__panel { filter: none !important; }
.habitcalc__controls { display: flex; flex-direction: column; gap: 18px; padding: 6px; }
.habitcalc__results { display: grid; grid-template-columns: repeat(2, minmax(280px, 1fr)); gap: 20px; align-items: stretch; }
.habitcalc__block { padding: 18px; background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.08); border-radius: 20px; }
.habitcalc__label-row { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 14px; }
.habitcalc__label { display: block; color: rgba(226,232,255,0.66); font-size: 0.76rem; font-weight: 800; letter-spacing: 0.12em; text-transform: uppercase; }
.habitcalc__value { color: #fff; font-size: 1rem; font-weight: 900; }
.habitcalc__habits { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.habitcalc__habit,
.habitcalc__freq-btn { padding: 12px 14px; border-radius: 14px; border: 1px solid rgba(255,255,255,0.08); background: rgba(255,255,255,0.04); color: rgba(255,255,255,0.82); font-size: 0.86rem; font-weight: 700; text-align: left; transition: transform 0.16s ease, border-color 0.16s ease, background 0.16s ease, box-shadow 0.16s ease; }
.habitcalc__habit:hover,
.habitcalc__freq-btn:hover { transform: translateY(-1px); border-color: rgba(224,197,143,0.45); }
.habitcalc__habit.is-active,
.habitcalc__freq-btn.is-active { background: rgba(108,71,255,0.14); border-color: rgba(108,71,255,0.50); color: #fff; box-shadow: 0 0 0 1px rgba(108,71,255,0.20); }
.habitcalc__freq { display: flex; gap: 10px; }
.habitcalc__freq-btn { flex: 1; text-align: center; }
.habitcalc__custom { margin-top: 16px; padding-top: 16px; border-top: 1px solid rgba(255,255,255,0.08); }
.habitcalc__custom-label { display: block; margin-bottom: 10px; color: rgba(226,232,255,0.66); font-size: 0.76rem; font-weight: 800; letter-spacing: 0.08em; text-transform: uppercase; }
.habitcalc__custom-row { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 10px; }
.habitcalc__custom-input { width: 100%; border: 1px solid rgba(255,255,255,0.1); border-radius: 14px; padding: 13px 14px; background: rgba(255,255,255,0.05); color: #fff; font: inherit; outline: none; transition: border-color 0.18s ease, box-shadow 0.18s ease, background 0.18s ease; }
.habitcalc__custom-input::placeholder { color: rgba(226,232,255,0.4); }
.habitcalc__custom-input:focus { border-color: rgba(224,197,143,0.48); box-shadow: 0 0 0 3px rgba(224,197,143,0.12); background: rgba(255,255,255,0.07); }
.habitcalc__custom-save { border: 1px solid rgba(224,197,143,0.38); border-radius: 14px; padding: 0 16px; background: rgba(224,197,143,0.12); color: #fff; font: inherit; font-size: 0.84rem; font-weight: 800; cursor: pointer; transition: transform 0.16s ease, background 0.16s ease, border-color 0.16s ease; }
.habitcalc__custom-save:hover { transform: translateY(-1px); background: rgba(224,197,143,0.18); border-color: rgba(224,197,143,0.56); }
.habitcalc__range { width: 100%; height: 8px; border-radius: 999px; background: linear-gradient(90deg, rgba(60,80,125,0.5), rgba(224,197,143,0.8)); outline: none; appearance: none; }
.habitcalc__range::-webkit-slider-thumb { appearance: none; width: 22px; height: 22px; border-radius: 50%; background: #E0C58F; border: 3px solid #ffffff; box-shadow: 0 0 0 6px rgba(224,197,143,0.16), 0 0 20px rgba(224,197,143,0.42); }
.habitcalc__range::-moz-range-thumb { width: 22px; height: 22px; border-radius: 50%; background: #E0C58F; border: 3px solid #ffffff; box-shadow: 0 0 0 6px rgba(224,197,143,0.16), 0 0 20px rgba(224,197,143,0.42); }
.habitcalc__range::-moz-range-track { height: 8px; border-radius: 999px; background: linear-gradient(90deg, rgba(60,80,125,0.5), rgba(224,197,143,0.8)); }
.habitcalc__result-card { min-height: 168px; padding: 20px 26px; border-radius: 22px; background: rgba(255,255,255,0.05); border: 1px solid rgba(255,255,255,0.08); min-width: 0; }
.habitcalc__result-card--primary { background: linear-gradient(145deg, rgba(60,80,125,0.24), rgba(255,255,255,0.04)); }
.habitcalc__result-kicker { display: block; margin-bottom: 10px; color: rgba(226,232,255,0.66); font-size: 0.76rem; font-weight: 800; letter-spacing: 0.12em; text-transform: uppercase; }
.habitcalc__result-sum { font-size: clamp(1.35rem, 2.2vw, 2.65rem); line-height: 1; font-weight: 900; color: #fff; letter-spacing: -0.03em; margin-bottom: 10px; white-space: nowrap; font-variant-numeric: tabular-nums; }
.habitcalc__result-sum .habitcalc__currency { white-space: nowrap; }
#habitInvestSum,
#habitSpentSum { display: block; white-space: nowrap; overflow: visible; }
.habitcalc__result-sum--accent { color: var(--accent); text-shadow: 0 0 26px rgba(224,197,143,0.18); }
.habitcalc__result-text { margin: 0; color: rgba(226,232,255,0.78); font-size: 0.88rem; line-height: 1.55; }
#habitCalcPanel > .habitcalc__results > p::before { content: "* "; color: #fff; }
.habitcalc__purchase { grid-column: 1 / -1; display: grid; grid-template-columns: 58px 1fr; gap: 14px; align-items: center; min-height: 112px; padding: 16px 18px; border-radius: 20px; background: rgba(255,255,255,0.06); border: 1px solid rgba(255,255,255,0.08); }
.habitcalc__purchase-icon { width: 58px; height: 58px; border-radius: 18px; display: flex; align-items: center; justify-content: center; background: rgba(224,197,143,0.12); color: #fff; font-size: 1.55rem; box-shadow: inset 0 0 0 1px rgba(224,197,143,0.2); }
.habitcalc__purchase-kicker { display: block; margin-bottom: 8px; color: rgba(226,232,255,0.62); font-size: 0.76rem; font-weight: 800; letter-spacing: 0.12em; text-transform: uppercase; }
.habitcalc__purchase-text { margin: 0; color: #fff; font-size: 1rem; line-height: 1.55; }
.habitcalc__note { grid-column: 1 / -1; color: rgba(226,232,255,0.7); font-size: 0.88rem; line-height: 1.6; margin: 0; text-align: center; }

@media (max-width: 900px) {
  .habitcalc__panel { grid-template-columns: 1fr; }
}

@media (max-width: 640px) {
  .habitcalc__panel { padding: 18px; }
  .habitcalc__habits { grid-template-columns: 1fr; }
  .habitcalc__custom-row { grid-template-columns: 1fr; }
  .habitcalc__freq { flex-direction: column; }
  .habitcalc__results { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .habitcalc__result-card { min-height: 150px; padding: 18px 16px; }
  .habitcalc__purchase { grid-template-columns: 52px 1fr; min-height: 98px; padding: 14px 16px; text-align: left; }
  .habitcalc__purchase-icon { margin: 0; width: 52px; height: 52px; font-size: 1.35rem; }
}

/* === BUDGET APP === */
.budget { background: #ebe5ff; }
.budget__locked-wrap { position: relative; border-radius: 20px; overflow: hidden; margin-top: 40px; cursor: default; }
.budget__locked-wrap:hover .budget__app { filter: blur(3px) brightness(0.5); transition: filter 0.3s; }
.budget__app { display: grid; grid-template-columns: 195px 1fr 255px; background: #fff; border-radius: 20px; overflow: hidden; box-shadow: 0 4px 30px rgba(60,80,125,0.1); min-height: 440px; }
.budget__sidebar { background: #f3f0ff; padding: 22px 14px; border-right: 1px solid #ded8ff; }
.budget__sidebar-title { font-size: 1rem; font-weight: 900; color: var(--text); padding-bottom: 14px; margin-bottom: 12px; border-bottom: 1px solid #ded8ff; }
.budget__nav { display: flex; flex-direction: column; gap: 3px; }
.budget__nav-item { display: flex; align-items: center; gap: 10px; padding: 9px 12px; border-radius: 10px; font-size: 0.85rem; font-weight: 600; color: var(--text2); }
.budget__nav-item--active { background: #fff; color: var(--text); box-shadow: 0 2px 10px rgba(108,71,255,0.12); }
.budget__main { display: flex; flex-direction: column; border-right: 1px solid #ded8ff; }
.budget__main-header { display: flex; align-items: center; justify-content: space-between; padding: 18px 22px; border-bottom: 1px solid #ded8ff; gap: 12px; flex-wrap: wrap; }
.budget__total { display: flex; align-items: center; gap: 10px; font-size: 0.88rem; font-weight: 700; color: var(--text); }
.budget__total-blur { width: 110px; height: 20px; background: linear-gradient(90deg,#ddd5ff,#c8c0f8); border-radius: 6px; }
.budget__add-btn { background: var(--accent); color: #fff; border: none; border-radius: 10px; padding: 9px 16px; font-size: 0.8rem; font-weight: 700; cursor: default; white-space: nowrap; font-family: inherit; }
.budget__tabs { display: flex; padding: 0 22px; border-bottom: 1px solid #ded8ff; overflow-x: auto; }
.budget__tab { padding: 11px 14px; font-size: 0.83rem; font-weight: 600; color: var(--text2); border-bottom: 2px solid transparent; white-space: nowrap; }
.budget__tab--active { color: var(--accent); border-bottom-color: var(--accent); }
.budget__empty { display: flex; flex-direction: column; align-items: center; justify-content: center; flex: 1; padding: 36px 22px; gap: 6px; text-align: center; }
.budget__empty-illust { font-size: 4rem; }
.budget__empty h4 { font-size: 1rem; font-weight: 700; color: var(--text); margin: 8px 0 4px; }
.budget__empty-hint { font-size: 0.8rem; color: #e07820; margin: 0; }
.budget__create-link { font-size: 0.83rem; color: var(--accent); font-weight: 700; }
.budget__history { padding: 18px 14px; display: flex; flex-direction: column; gap: 12px; }
.budget__history-title { font-size: 0.9rem; font-weight: 800; color: var(--text); }
.budget__history-tabs { display: flex; gap: 5px; flex-wrap: wrap; }
.budget__htab { padding: 4px 9px; font-size: 0.7rem; font-weight: 700; border-radius: 8px; color: var(--text2); background: #ede8ff; }
.budget__htab--active { background: #ddd5ff; color: var(--accent); }
.budget__search { display: flex; align-items: center; border: 1.5px solid #ddd5ff; border-radius: 10px; padding: 7px 10px; gap: 6px; }
.budget__search input { border: none; outline: none; font-size: 0.78rem; flex: 1; color: var(--text2); background: transparent; font-family: inherit; }
.budget__spinner { width: 26px; height: 26px; border: 3px solid #ddd5ff; border-top-color: var(--accent); border-radius: 50%; animation: bspin 0.9s linear infinite; margin: 12px auto; }
@keyframes bspin { to { transform: rotate(360deg); } }
.budget__lock-overlay { position: absolute; inset: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 14px; opacity: 0; transition: opacity 0.3s; z-index: 2; pointer-events: none; }
.budget__locked-wrap:hover .budget__lock-overlay { opacity: 1; pointer-events: auto; }
.budget__lock-icon { font-size: 3rem; filter: drop-shadow(0 4px 14px rgba(0,0,0,0.35)); }
.budget__lock-text { font-size: 1.1rem; font-weight: 800; color: #fff; text-shadow: 0 2px 10px rgba(0,0,0,0.5); }
.budget--unlocked .budget__app { filter: none !important; }
.budget--unlocked .budget__lock-overlay { display: none !important; }

/* === TG CHAT === */
.tgchat { background: linear-gradient(135deg, #0A1428 0%, #1e1460 100%); }
.tgchat__inner { display: grid; grid-template-columns: 200px 1fr; gap: 64px; align-items: center; }
.tg3d { width: 180px; height: 180px; flex-shrink: 0; }
.tg3d__circle { width: 180px; height: 180px; border-radius: 42px; background: linear-gradient(145deg, #5eb8f5 0%, #2b8cc4 50%, #1668a8 100%); box-shadow: 0 24px 60px rgba(43,140,196,0.55), 0 5px 0 #1060a0, inset 0 2px 6px rgba(255,255,255,0.22); display: flex; align-items: center; justify-content: center; transform: perspective(400px) rotateX(8deg) rotateY(-6deg); }
.tg3d__plane { fill: #fff; filter: drop-shadow(0 2px 4px rgba(0,0,0,0.15)); }
.tgchat__title { font-size: clamp(1.5rem, 3vw, 2.3rem); font-weight: 900; color: #fff; line-height: 1.2; margin: 8px 0 16px; }
.tgchat__title span { color: var(--accent); }
.tgchat__sub { color: rgba(255,255,255,0.65); font-size: 0.95rem; margin-bottom: 22px; line-height: 1.6; }
.tgchat__list { list-style: none; padding: 0; margin: 0 0 28px; display: flex; flex-direction: column; gap: 11px; }
.tgchat__list li { display: flex; gap: 12px; color: rgba(255,255,255,0.88); font-size: 0.9rem; line-height: 1.4; }
.tgchat__list li::before { content: '✓'; color: #54c0f5; font-weight: 900; flex-shrink: 0; }
.tgchat__forever { font-size: 0.78rem; color: rgba(255,255,255,0.42); margin-top: 14px; }

.tgchat, .register { position: relative; overflow: hidden; }
.section__lock {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(8, 10, 20, 0.88);
  opacity: 0;
  transition: opacity 0.22s ease;
  z-index: 10;
  pointer-events: none;
}
.tgchat:hover .section__lock,
.register:hover .section__lock {
  opacity: 1;
  pointer-events: auto;
}
.section__lock-inner {
  text-align: center;
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
}
.section__lock-icon {
  font-size: 2.8rem;
  filter: drop-shadow(0 10px 26px rgba(0, 0, 0, 0.35));
}
.section__lock-text {
  font-size: 1.05rem;
  font-weight: 900;
  text-transform: uppercase;
  color: #f8f8ff;
  letter-spacing: 0.12em;
  text-shadow: 0 2px 18px rgba(0, 0, 0, 0.35);
}

/* === BENTO GRID === */
.bento-grid { display: grid; grid-template-columns: 2fr 1fr 1fr; gap: 16px; margin-bottom: 40px; }
.bento-cell { border-radius: 20px; padding: 28px; position: relative; display: flex; flex-direction: column; gap: 8px; min-height: 185px; }
.bento-cell--dark { background: #0A1428; color: #fff; }
.bento-cell--accent { background: linear-gradient(145deg, var(--accent), #7b5cf5); color: #fff; }
.bento-cell--lime { background: var(--lime2); color: var(--text); }
.bento-cell--light { background: #F5F0E9; color: var(--text); box-shadow: inset 0 0 0 1.5px #e4e8ff; }
.bento-cell--tall { grid-row: span 2; justify-content: center; align-items: center; text-align: center; min-height: 280px; }
.bento-big { font-size: clamp(2.8rem, 5.5vw, 4rem); font-weight: 900; line-height: 1; }
.bento-big span { font-size: 0.6em; opacity: 0.7; }
.bento-cell p { font-size: 1rem; font-weight: 600; opacity: 0.85; margin: 0; line-height: 1.45; }
.bento-cell--dark p, .bento-cell--accent p { color: #fff; opacity: 1; }
.bento-sub { font-size: 0.82rem !important; opacity: 0.55 !important; }
.bento-plus { position: absolute; top: 14px; right: 14px; width: 30px; height: 30px; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-size: 1.2rem; font-weight: 300; line-height: 1; }
.bento-cell--dark .bento-plus { background: rgba(255,255,255,0.12); border: 1.5px solid rgba(255,255,255,0.22); color: rgba(255,255,255,0.8); }
.bento-cell--accent .bento-plus { background: rgba(255,255,255,0.18); border: 1.5px solid rgba(255,255,255,0.3); color: #fff; }
.bento-cell--lime .bento-plus { background: rgba(0,0,0,0.1); border: 1.5px solid rgba(0,0,0,0.16); color: var(--text); }
.bento-chips { display: flex; gap: 6px; flex-wrap: wrap; margin-top: 10px; }
.bento-chip { background: rgba(255,255,255,0.13); border: 1px solid rgba(255,255,255,0.2); color: #fff; font-size: 0.68rem; font-weight: 700; padding: 3px 10px; border-radius: 50px; }

/* === BLOG REELS === */
.blog-feed { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; margin-bottom: 40px; }
.blog-reel { border-radius: 20px; overflow: hidden; aspect-ratio: 9/16; position: relative; background: linear-gradient(170deg, #0A1428 0%, #1a0b40 100%); cursor: pointer; }
.blog-reel__cover { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; }
.blog-reel__video { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; opacity: 0.9; }
.blog-reel__play { width: 52px; height: 52px; border-radius: 50%; background: rgba(224,197,143,0.12); border: 2px solid rgba(224,197,143,0.55); color: var(--accent); font-size: 1.2rem; display: flex; align-items: center; justify-content: center; padding-left: 4px; transition: transform 0.2s, background 0.2s; }
.blog-reel:hover .blog-reel__play { transform: scale(1.12); background: rgba(224,197,143,0.22); }
.blog-reel__info { position: absolute; bottom: 0; left: 0; right: 0; padding: 40px 14px 16px; background: linear-gradient(to top, rgba(0,0,0,0.78), transparent); }
.blog-reel__handle { font-size: 0.68rem; font-weight: 800; color: var(--accent); letter-spacing: 0.05em; display: block; margin-bottom: 5px; }
.blog-reel__info p { color: #fff; font-size: 0.82rem; font-weight: 600; line-height: 1.4; margin: 0; }
@media (max-width: 860px) { .blog-feed { grid-template-columns: repeat(2, 1fr); } }
.feat-cols { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; margin-bottom: 40px; }
.feat-col { border-radius: 20px; padding: 0; overflow: hidden; position: relative; display: flex; flex-direction: column; min-height: 320px; }
.feat-col--1 { background: linear-gradient(160deg, #0A1428 0%, #3C507D 100%); }
.feat-col--2 { background: linear-gradient(160deg, #1a0030 0%, #7b5cf5 100%); }
.feat-col--3 { background: var(--lime2); }
.feat-col__plus { position: absolute; top: 16px; right: 16px; width: 32px; height: 32px; border-radius: 50%; background: rgba(255,255,255,0.18); border: 1.5px solid rgba(255,255,255,0.3); display: flex; align-items: center; justify-content: center; font-size: 1.2rem; font-weight: 300; color: #fff; z-index: 1; }
.feat-col--3 .feat-col__plus { background: rgba(0,0,0,0.12); border-color: rgba(0,0,0,0.2); color: var(--text); }
.feat-col__body { margin-top: auto; padding: 28px 24px; }
.feat-col__body h3 { font-size: 1.1rem; font-weight: 900; color: #fff; margin: 0 0 10px; }
.feat-col--3 .feat-col__body h3 { color: var(--text); }
.feat-col__body p { font-size: 0.83rem; line-height: 1.55; color: rgba(255,255,255,0.78); margin: 0; }
.feat-col--3 .feat-col__body p { color: rgba(0,0,0,0.65); }

@media (max-width: 860px) {
  .bento-grid { grid-template-columns: 1fr 1fr; }
  .bento-cell--tall { grid-row: span 1; }
  .feat-cols { grid-template-columns: 1fr; }
}
@media (max-width: 560px) {
  .bento-grid { grid-template-columns: 1fr; }
}

/* === MOBILE RESPONSIVE === */
@media (max-width: 860px) {
  .tgchat__inner { grid-template-columns: 1fr; gap: 32px; text-align: center; }
  .tg3d { margin: 0 auto; }
  .tgchat__list { text-align: left; }
}

@media (max-width: 768px) {
  .goals__layout { grid-template-columns: 1fr; }
  .budget__app { grid-template-columns: 1fr !important; }
  .budget__sidebar { display: none !important; }
  .budget__history { padding: 14px; }
  .budget__main { border-right: none; }
  .budget__tabs { padding: 0 14px; }
  .budget__main-header { padding: 14px; }
  .goals__form,
  .goals__result { padding: 22px 18px; }
  .goals__result-empty,
  .goals__result-head { align-items: flex-start; }
}

@media (max-width: 480px) {
  .goals__form,
  .goals__result { padding: 18px 14px; }
  .goals__result-empty,
  .goals__result-head { gap: 12px; }
  .goals__result-icon { font-size: 2.2rem; }
  .goals__plan-grid { grid-template-columns: 1fr; }
  .goals__item { padding: 12px 14px; gap: 10px; flex-wrap: wrap; }
  .goals__item-name,
  .goals__item-meta,
  .goals__item-monthly { width: 100%; }
  .blog-feed { grid-template-columns: 1fr; }
  .tgchat__inner { gap: 24px; }
  .tg3d,
  .tg3d__circle { width: 132px; height: 132px; }
  .habitcalc__results { grid-template-columns: 1fr 1fr; gap: 14px; }
  .habitcalc__result-card { min-height: 136px; padding: 16px 18px; }
  .habitcalc__result-kicker { margin-bottom: 8px; font-size: 0.68rem; }
  .habitcalc__result-sum { font-size: clamp(1.15rem, 4.8vw, 1.65rem); }
  .habitcalc__result-text { font-size: 0.76rem; }
  .habitcalc__purchase { grid-template-columns: 46px 1fr; gap: 12px; min-height: 86px; padding: 12px 14px; }
  .habitcalc__purchase-icon { width: 46px; height: 46px; font-size: 1.2rem; border-radius: 14px; }
  .habitcalc__purchase-text { font-size: 0.82rem; }
}

@media (max-width: 360px) {
  .goals__form,
  .goals__result { padding: 14px 10px; }
  .goals__field input { padding: 9px 12px; font-size: 0.86rem; }
  .goals__calc-btn { padding: 11px; font-size: 0.8rem; }
  .budget__main-header,
  .budget__tabs,
  .budget__history { padding-left: 10px; padding-right: 10px; }
  .budget__empty { padding: 24px 12px; }
  .tg3d,
  .tg3d__circle { width: 112px; height: 112px; border-radius: 28px; }
  .tgchat__title { font-size: 1.2rem; }
  .tgchat__sub,
  .tgchat__list li { font-size: 0.82rem; }
}

@media (min-width: 561px) and (max-width: 767px) {
  .goals__layout { grid-template-columns: 1fr 1.3fr; gap: 16px; }
  .goals__form, .goals__result { padding: 18px 14px; }
}
