/* ═══════════════════════════════════════════════════════════════
   app-modern.css — 앱(index.html)을 모던 랜딩(modern.css)과 통일
   흰 배경 + 블루(#1E3AFF) 시스템 / 금색(#CDA00A) 핵심 CTA + 라운드 소프트 카드 + Inter/Gothic
   styles.css/redesign.css 뒤에 로드되어 시각 속성만 오버라이드. 레이아웃 유지.
   ═══════════════════════════════════════════════════════════════ */
:root{
  --m-bg:#ffffff; --m-soft:#F7F7F9; --m-2:#F1F1F4; --m-card:#ffffff;
  --m-ink:#0B0B0F; --m-ink2:#3A3A42; --m-muted:#6C6C77; --m-line:#E9E9EE;
  --m-blue:#1E3AFF; --m-blue-soft:#EEF0FF;
  --m-gold:#CDA00A; --m-gold-deep:#A88208; --m-gold-ink:#1A1400;
  --m-font:'Inter','Gothic A1',sans-serif;
  --m-disp:'Gothic A1','Archivo',sans-serif;
  --m-sh-sm:0 1px 2px rgba(11,11,15,.06);
  --m-sh:0 8px 30px rgba(11,11,15,.08);
  --m-sh-lg:0 24px 60px -12px rgba(11,11,15,.16);
  --m-ease:cubic-bezier(.2,.7,.2,1);
}
:root[data-theme="dark"]{
  --m-bg:#0A0A0C; --m-soft:#101014; --m-2:#16161C; --m-card:#121218;
  --m-ink:#F4F4F6; --m-ink2:#C6C6D0; --m-muted:#9A9AA6; --m-line:#22232B;
  --m-blue:#5B72FF; --m-blue-soft:#171A33; --m-gold:#E6BE3A;
  --m-sh-sm:0 1px 2px rgba(0,0,0,.5); --m-sh:0 8px 30px rgba(0,0,0,.5); --m-sh-lg:0 24px 60px -12px rgba(0,0,0,.7);
}

body{background:var(--m-bg)!important;color:var(--m-ink)!important;font-family:var(--m-font)!important;-webkit-font-smoothing:antialiased}
:root[data-theme="dark"] body{background:var(--m-bg)!important;color:var(--m-ink)!important}

/* ── 상단 네비 ── */
header.nav{background:color-mix(in srgb,var(--m-bg) 82%,transparent)!important;border-bottom:1px solid var(--m-line)!important;backdrop-filter:blur(12px) saturate(160%)!important;box-shadow:none!important}
.nav .brand,.nav .brand-name{color:var(--m-ink)!important;font-family:var(--m-disp)!important;font-weight:900!important}
.nav .brand-mark{color:var(--m-gold)!important}
.nav-links .nav-top,.nav-links a{color:var(--m-muted)!important;font-weight:500!important;text-transform:none!important;letter-spacing:0!important}
.nav-links .nav-top:hover,.nav-links a:hover{color:var(--m-ink)!important}
.nav-menu{background:var(--m-card)!important;border:1px solid var(--m-line)!important;border-radius:16px!important;box-shadow:var(--m-sh)!important}
.nav-menu a{color:var(--m-ink2)!important}
.nav-menu a:hover{background:var(--m-soft)!important;color:var(--m-blue)!important}
.nav-pill,.nav-cta .btn{border-radius:999px!important;font-weight:600!important;text-transform:none!important;letter-spacing:0!important}
.nav-cta .btn-primary,a.btn-primary{background:var(--m-gold)!important;color:var(--m-gold-ink)!important;border:1px solid var(--m-gold)!important;box-shadow:var(--m-sh-sm)!important}
.nav-cta .btn-primary:hover,a.btn-primary:hover{background:var(--m-gold-deep)!important;border-color:var(--m-gold-deep)!important}
.nav-cta .btn-ghost{background:var(--m-bg)!important;color:var(--m-ink)!important;border:1px solid var(--m-line)!important}
.nav-cta .btn-ghost:hover{background:var(--m-soft)!important}
.nav-toggle{border:1px solid var(--m-line)!important;border-radius:12px!important;color:var(--m-ink)!important;background:var(--m-bg)!important}
.nav-progress{background:var(--m-blue)!important}
.nav-sheet{background:var(--m-bg)!important}
.nav-sheet-links a{color:var(--m-ink)!important}
.nav-sheet-links a:hover{color:var(--m-blue)!important}
.nav-sheet-close{border:1px solid var(--m-line)!important;border-radius:12px!important;color:var(--m-ink)!important}

/* ── 히어로 ── */
.repent,.repent.solo{background:var(--m-bg)!important}
.hc-eyebrow{color:var(--m-blue)!important;font-weight:700!important;letter-spacing:.04em}
.hc-eyebrow .mark,.hc-eyebrow svg{color:var(--m-blue)!important}
.veil-privacy-top{color:var(--m-muted)!important;font-weight:500!important}
.veil-privacy-top svg{color:var(--m-gold)!important}
.hc-disp{font-family:var(--m-disp)!important;font-weight:900!important;color:var(--m-ink)!important;letter-spacing:-.03em!important;line-height:1.05!important}
.hc-disp em{color:var(--m-blue)!important;font-style:normal!important}
.solo-sub{color:var(--m-muted)!important}

/* ── 앱 카드 ── */
.app-card{background:var(--m-card)!important;border:1px solid var(--m-line)!important;border-radius:24px!important;box-shadow:var(--m-sh-lg)!important}
.app-card::before{display:none!important}
.confess-helpers .helper-label{color:var(--m-muted)!important;font-weight:600!important;letter-spacing:0}
.chip{border:1px solid var(--m-line)!important;border-radius:999px!important;background:var(--m-soft)!important;color:var(--m-ink2)!important;font-weight:500!important}
.chip:hover,.chip.is-selected{background:var(--m-blue-soft)!important;color:var(--m-blue)!important;border-color:color-mix(in srgb,var(--m-blue) 40%,var(--m-line))!important}
.confess-textarea{border:1px solid var(--m-line)!important;border-radius:16px!important;background:var(--m-card)!important;color:var(--m-ink)!important;font-family:var(--m-font)!important}
.confess-textarea:focus{outline:2px solid var(--m-blue)!important;outline-offset:-2px;border-color:transparent!important;box-shadow:none!important}
.confess-textarea::placeholder{color:var(--m-muted)!important;font-style:normal!important}
.confess-meta,.confess-count,.confess-privacy{color:var(--m-muted)!important}
.confess-privacy svg{color:var(--m-muted)!important}

/* ── 버튼 ── */
.btn{border-radius:12px!important;font-weight:600!important;text-transform:none!important;letter-spacing:0!important}
.btn-gold,#submit-confession,#btn-amen{background:var(--m-gold)!important;color:var(--m-gold-ink)!important;border:1px solid var(--m-gold)!important;box-shadow:var(--m-sh-sm)!important}
.btn-gold:hover,#submit-confession:hover,#btn-amen:hover{background:var(--m-gold-deep)!important;border-color:var(--m-gold-deep)!important;transform:translateY(-1px);box-shadow:var(--m-sh)!important}
.btn-primary{background:var(--m-gold)!important;color:var(--m-gold-ink)!important;border:1px solid var(--m-gold)!important}
.btn-ghost{background:var(--m-bg)!important;color:var(--m-ink)!important;border:1px solid var(--m-line)!important}
.btn-ghost:hover{background:var(--m-soft)!important}
.btn-text{color:var(--m-muted)!important;border:0!important}
.btn-text:hover{color:var(--m-blue)!important}

/* ── 로딩 ── */
.ws-veil{color:var(--m-gold)!important;filter:none!important}
.ws-ref{color:var(--m-ink)!important;font-family:var(--m-disp)!important}
.ws-glow{background:radial-gradient(circle,rgba(30,58,255,.20),transparent 70%)!important}
.bss-caption{color:var(--m-muted)!important}
.step-name,.step-num{color:var(--m-muted)!important;letter-spacing:.06em}

/* ── 응답 블록 ── */
.response-block{background:var(--m-card)!important;border:1px solid var(--m-line)!important;border-left:1px solid var(--m-line)!important;border-radius:18px!important;box-shadow:var(--m-sh-sm)!important}
.response-block .block-label,.block-label{color:var(--m-blue)!important;font-weight:700!important;letter-spacing:.03em}
.response-block .block-label .ic{color:var(--m-blue)!important}
.response-word blockquote,#resp-verse-text{font-family:var(--m-disp)!important;font-weight:800!important;color:var(--m-ink)!important;letter-spacing:-.01em!important}
.response-word cite,#resp-verse-ref{color:var(--m-blue)!important;font-style:normal!important}
.response-block p{color:var(--m-ink2)!important}
.response-apply .block-label,.response-apply .block-label .ic{color:var(--m-blue)!important}
.deck-dot{border:1px solid var(--m-line)!important;border-radius:999px!important;background:var(--m-soft)!important;color:var(--m-ink2)!important}
.deck-dot.is-active{background:var(--m-blue)!important;color:#fff!important;border-color:var(--m-blue)!important}
.deck-arrow{border:1px solid var(--m-line)!important;border-radius:12px!important;color:var(--m-ink)!important;background:var(--m-bg)!important}

/* 멤버십 CTA / 저널 */
.member-cta{border:1px solid var(--m-line)!important;border-radius:18px!important;background:var(--m-soft)!important;color:var(--m-ink)!important}
.member-cta:hover{transform:translateY(-2px);box-shadow:var(--m-sh)!important;border-color:color-mix(in srgb,var(--m-blue) 40%,var(--m-line))!important}
.member-cta-go{color:var(--m-blue)!important;font-weight:700!important}
.response-tier,.premium-ai{border-radius:16px!important}
.journal-card{border:1px solid var(--m-line)!important;border-radius:18px!important;background:var(--m-soft)!important}
.journal-card .block-label{color:var(--m-blue)!important}
.journal-card p,.journal-note,.journal-acct{color:var(--m-muted)!important}
.app-note{color:var(--m-muted)!important}
.app-note svg{color:var(--m-muted)!important}

/* ── footer (모던: soft bg) ── */
.footer{background:var(--m-soft)!important;color:var(--m-ink)!important;border-top:1px solid var(--m-line)!important}
.footer .footer-support{border-bottom:1px solid var(--m-line)!important}
.footer .footer-support strong,.footer .footer-support span,.footer .footer-support b{color:var(--m-ink)!important}
.footer .footer-brand .brand-name{color:var(--m-ink)!important;font-family:var(--m-disp)!important}
.footer .brand-mark{color:var(--m-gold)!important}
.footer .footer-tag{color:var(--m-muted)!important}
.footer h5{color:var(--m-muted)!important;letter-spacing:.03em}
.footer a{color:var(--m-ink2)!important}
.footer a:hover{color:var(--m-blue)!important}
.footer .footer-bottom{border-top:1px solid var(--m-line)!important;color:var(--m-muted)!important}
.footer small,.footer .soli{color:var(--m-muted)!important}
.footer .lang-opt{color:var(--m-ink2)!important}
.footer .lang-opt.is-current{color:var(--m-blue)!important;font-weight:700}
.footer .footer-support a{color:var(--m-blue)!important}

/* 플로팅 메뉴: 금색 pill 유지(핵심 CTA 톤), 열림 패널 블루 */
.fmenu-bg{background:var(--m-gold)!important;border-color:var(--m-gold)!important}
.fmenu-circle{background:var(--m-blue)!important}
/* English account data controls: explicit scope before the destructive action. */
.data-controls{padding:clamp(56px,8vw,96px) 0;background:color-mix(in srgb,var(--bg,#fff) 92%,#1e3aff 8%);border-top:1px solid rgba(30,58,255,.1)}
.data-controls-inner{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(260px,.65fr);gap:clamp(28px,6vw,72px);align-items:center}
.data-controls-copy h2{margin:.55rem 0 1rem;font-size:clamp(1.8rem,4vw,3rem);line-height:1.06;letter-spacing:-.035em}
.data-controls-copy p{max-width:68ch;line-height:1.7;color:var(--text-muted,#5d6472)}
.data-controls-scope{font-size:.92rem}
.data-controls-actions{display:grid;gap:10px;padding:20px;border:1px solid rgba(30,58,255,.14);border-radius:20px;background:var(--surface,#fff);box-shadow:0 16px 45px rgba(15,23,42,.07)}
.data-controls-actions .btn{width:100%;transition:transform 140ms cubic-bezier(.23,1,.32,1),border-color 140ms ease,background-color 140ms ease}
.data-controls-actions .btn:active{transform:scale(.97)}
.data-controls-delete{border:1px solid rgba(166,73,59,.38);background:transparent;color:#a6493b}
.data-controls-status{min-height:1.4em;margin:2px 2px 0;font-size:.88rem;line-height:1.5;color:var(--text-muted,#5d6472)}
.data-controls-status[data-tone="success"]{color:#39755c}
.data-controls-status[data-tone="error"]{color:#a6493b}
@media (max-width:760px){.data-controls-inner{grid-template-columns:1fr}.data-controls-actions{padding:16px}}
@media (prefers-reduced-motion:reduce){.data-controls-actions .btn{transition:none}}
