/* MATCHSIK enrollment premium mobile/flow polish v32.9 */
:root{--v329-navy:#071b36;--v329-ink:#10284e;--v329-blue:#1769ff;--v329-orange:#ff7029;--v329-muted:#667d9b;--v329-line:#d9e5f2;--v329-soft:#f5f8fd;--v329-shadow:0 14px 36px rgba(7,27,54,.08)}
body.apply-standalone #appPage .app-title,body.apply-standalone #appPage .smart-question b,body.apply-standalone #appPage .pricing-section-head h4{word-break:keep-all!important;text-wrap:balance}
body.apply-standalone #appPage .step-eyebrow{display:flex!important;align-items:center!important;gap:9px!important;flex-wrap:wrap!important}
body.apply-standalone #appPage .v329-cert-badge{display:inline-flex;align-items:center;justify-content:center;min-height:26px;padding:4px 10px;border:1px solid #cfe0f5;border-radius:999px;background:#eef5ff;color:#174f98;font-size:10px;font-weight:900;letter-spacing:-.02em;text-transform:none}

/* Plan choice: make price/benefit comparison readable before advancing. */
body.apply-standalone #appPage .billing-mode-grid.premium{gap:10px!important}
body.apply-standalone #appPage .billing-mode-card{position:relative!important;min-width:0!important;border-color:#d7e3f1!important;box-shadow:var(--v329-shadow)!important}
body.apply-standalone #appPage .billing-mode-card.selected{border-color:#75a8ff!important;box-shadow:0 0 0 3px rgba(23,105,255,.10),0 16px 36px rgba(7,27,54,.09)!important}
body.apply-standalone #appPage .billing-mode-card.selected:after{content:'선택됨';position:absolute;right:12px;top:12px;padding:4px 8px;border-radius:999px;background:#eaf2ff;color:#1761c8;font-size:9px;font-weight:900}
body.apply-standalone #appPage .mode-copy b{word-break:keep-all!important}
body.apply-standalone #appPage .mode-rate{min-width:0!important}
body.apply-standalone #appPage .mode-rate b,body.apply-standalone #appPage .mode-rate del{font-variant-numeric:tabular-nums}

/* Teacher details: clear specialty hierarchy and centered selection action. */
body.apply-standalone #teacherDetailBody .v329-role-breakdown{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:10px}
body.apply-standalone #teacherDetailBody .v329-role-breakdown>span{display:block;min-width:0;padding:9px 10px;border:1px solid #dbe6f3;border-radius:10px;background:rgba(255,255,255,.76)}
body.apply-standalone #teacherDetailBody .v329-role-breakdown small{display:block;color:#7a8da7;font-size:9px;font-weight:850;letter-spacing:.04em}
body.apply-standalone #teacherDetailBody .v329-role-breakdown b{display:block;margin-top:3px;color:#16365f;font-size:11px;line-height:1.45;word-break:keep-all}
body.apply-standalone #teacherDetailBody .m2813-detail-role.v329-enhanced-role{display:none!important}
body.apply-standalone #teacherDetailBody .v329-teacher-specialties{margin:14px 28px 0!important;padding:18px!important;border:1px solid #dce7f3!important;border-radius:14px!important;background:linear-gradient(125deg,#f3f8ff,#fff)!important}
body.apply-standalone #teacherDetailBody .v329-specialty-kicker{display:block;color:#1769ff;font-size:9px;font-weight:900;letter-spacing:.11em}
body.apply-standalone #teacherDetailBody .v329-teacher-specialties>h3{margin:4px 0 12px!important;color:#0c2d57!important;font-size:16px!important}
body.apply-standalone #teacherDetailBody .v329-specialty-list{display:grid;gap:9px}
body.apply-standalone #teacherDetailBody .v329-specialty-row{display:grid;grid-template-columns:minmax(104px,.8fr) minmax(0,1.7fr);gap:10px;align-items:start;padding:10px 11px;border:1px solid #e0e9f4;border-radius:11px;background:#fff}
body.apply-standalone #teacherDetailBody .v329-specialty-row>b{color:#102d55;font-size:12px;line-height:1.5}
body.apply-standalone #teacherDetailBody .v329-specialty-chips{display:flex;flex-wrap:wrap;gap:5px}
body.apply-standalone #teacherDetailBody .v329-specialty-chips span{padding:4px 7px;border-radius:999px;background:#edf4ff;color:#315f9e;font-size:9px;font-weight:800}
body.apply-standalone #teacherDetailBody .v329-original-assignment{display:none!important}
body.apply-standalone #teacherDetailBody .m2813-detail-actions{display:flex!important;justify-content:center!important;align-items:center!important}
body.apply-standalone #teacherDetailBody .m2813-detail-actions .btn{width:min(260px,100%)!important;min-height:46px!important;padding:11px 20px!important;border-radius:12px!important;font-size:14px!important}

/* Agreement reader always rises above bottom navigation and begins at the document top. */
body.apply-standalone .v329-agreement-modal{z-index:1800!important;align-items:flex-start!important;padding-top:max(10px,env(safe-area-inset-top))!important}
body.apply-standalone .v329-agreement-modal>[class*='card'],body.apply-standalone .v329-agreement-modal>[class*='panel'],body.apply-standalone .v329-agreement-modal>[class*='sheet']{max-height:calc(100dvh - max(20px,env(safe-area-inset-top)) - max(14px,env(safe-area-inset-bottom)))!important}
body.v329-agreement-open #stepContent>.step-actions,body.v329-agreement-open #stepContent>.smart-nav{z-index:400!important}

/* Quote: keep labels, values and monthly blocks inside their cells. */
body.apply-standalone #appPage .quote-card{width:min(920px,100%)!important;margin-inline:auto!important;overflow:hidden!important}
body.apply-standalone #appPage .quote-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
body.apply-standalone #appPage .quote-grid>div{min-width:0!important;padding:15px!important;border:1px solid #dce6f2!important;border-radius:13px!important;background:#f9fbfe!important;align-content:start!important}
body.apply-standalone #appPage .quote-grid small,body.apply-standalone #appPage .quote-breakdown small{color:#7d8fa8!important;font-size:10px!important;line-height:1.4!important}
body.apply-standalone #appPage .quote-grid b,body.apply-standalone #appPage .quote-grid strong{min-width:0!important;margin-top:5px!important;color:#102b51!important;font-size:14px!important;line-height:1.55!important;word-break:keep-all!important;overflow-wrap:anywhere!important}
body.apply-standalone #appPage .quote-breakdown{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:9px!important;align-items:stretch!important}
body.apply-standalone #appPage .quote-breakdown>div{min-width:0!important;padding:14px!important;border:1px solid #dce6f2!important;border-radius:12px!important;background:#fff!important;align-content:center!important}
body.apply-standalone #appPage .quote-breakdown b,body.apply-standalone #appPage .quote-breakdown strong{font-variant-numeric:tabular-nums;white-space:normal!important;overflow-wrap:anywhere!important}
body.apply-standalone #appPage .quote-total{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:18px!important;align-items:center!important}
body.apply-standalone #appPage .quote-total>*{min-width:0!important}
body.apply-standalone #appPage .quote-total strong{white-space:nowrap!important;font-variant-numeric:tabular-nums!important}

@media(max-width:760px){
  html,body.apply-standalone{max-width:100%!important;overflow-x:hidden!important;overflow-y:auto!important;touch-action:pan-y!important}
  body.apply-standalone{padding-bottom:calc(76px + env(safe-area-inset-bottom))!important}
  body.apply-standalone #appPage .sidebar{display:none!important}
  body.apply-standalone #appPage .app-shell{display:block!important;width:100%!important;min-height:100dvh!important}
  body.apply-standalone #appPage .app-main{width:100%!important;min-height:100dvh!important;margin:0!important}
  body.apply-standalone #appPage .app-content{width:100%!important;max-width:none!important;padding:10px 14px 20px!important;margin:0!important;overflow:visible!important}
  body.apply-standalone #appPage .step-eyebrow{margin:0 0 5px!important;min-height:27px!important;font-size:9px!important;line-height:1.2!important}
  body.apply-standalone #appPage .v329-cert-badge{margin-left:auto;max-width:42vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  body.apply-standalone #appPage .app-title{font-size:25px!important;line-height:1.12!important;margin:0!important;letter-spacing:-.05em!important}
  body.apply-standalone #appPage .app-desc{margin:5px 0 0!important;font-size:12px!important;line-height:1.45!important}
  body.apply-standalone #appPage .draft-status{min-height:26px!important;margin-top:7px!important;padding:4px 9px!important;font-size:9px!important}
  body.apply-standalone #appPage .smart-stepbar{display:none!important}
  body.apply-standalone #appPage .smart-question{margin:8px 0 10px!important;padding:10px 12px!important;border-radius:0 13px 13px 0!important}
  body.apply-standalone #appPage .smart-question span{font-size:9px!important}
  body.apply-standalone #appPage .smart-question b{font-size:17px!important;line-height:1.25!important}
  body.apply-standalone #appPage .smart-question small{margin-top:3px!important;font-size:10px!important;line-height:1.4!important}

  /* Step 1: all three course choices in one viewport. */
  body.apply-standalone[data-smart-main-step='1'] #appPage .app-desc{display:none!important}
  body.apply-standalone[data-v325-phase='course'] #appPage .course-choice-grid:not(.smart-hidden){display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:7px!important;margin:10px 0 0!important}
  body.apply-standalone[data-v325-phase='course'] #appPage .choice-card{position:relative!important;min-width:0!important;min-height:104px!important;padding:12px 8px!important;border-radius:14px!important;display:flex!important;align-items:flex-start!important;justify-content:center!important;text-align:left!important}
  body.apply-standalone[data-v325-phase='course'] #appPage .choice-card h3{font-size:17px!important;line-height:1.2!important;white-space:normal!important;word-break:keep-all!important;margin:0!important}
  body.apply-standalone[data-v325-phase='course'] #appPage .choice-card strong{display:block!important;margin-top:7px!important;font-size:9px!important;line-height:1.35!important;color:#687c97!important;word-break:keep-all!important}
  body.apply-standalone[data-v325-phase='course'] #appPage .choice-check{right:7px!important;top:7px!important;min-height:20px!important;padding:2px 6px!important;font-size:8px!important}

  /* Target round navigation belongs to the document, not over the cards. */
  body.apply-standalone[data-v325-phase='target'] #appPage .smart-round-picker{margin-top:9px!important;padding:14px!important;border-radius:16px!important}
  body.apply-standalone[data-v325-phase='target'] #appPage .smart-round-head{margin-bottom:8px!important}
  body.apply-standalone[data-v325-phase='target'] #appPage .smart-round-head b{font-size:18px!important}
  body.apply-standalone[data-v325-phase='target'] #appPage .smart-round-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:6px!important}
  body.apply-standalone[data-v325-phase='target'] #appPage .smart-round{min-height:63px!important;padding:8px 5px!important}
  body.apply-standalone[data-v325-phase='target'] #appPage .smart-nav{position:static!important;inset:auto!important;transform:none!important;margin:9px 0 0!important;padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important;backdrop-filter:none!important;display:grid!important;grid-template-columns:minmax(104px,.72fr) minmax(0,1.28fr)!important;gap:8px!important}
  body.apply-standalone[data-v325-phase='target'] #appPage .smart-nav button{min-height:43px!important;padding:8px 11px!important;border-radius:11px!important;font-size:12px!important}

  /* Step 3: the active decision is the only visual headline. */
  body.apply-standalone[data-smart-main-step='3'] #appPage .pricing-intro{display:none!important}
  body.apply-standalone[data-v325-phase='plan'] #appPage .billing-mode-grid.premium{display:grid!important;grid-template-columns:1fr!important;gap:8px!important;margin-top:8px!important}
  body.apply-standalone[data-v325-phase='plan'] #appPage .billing-mode-card{display:grid!important;grid-template-columns:42px minmax(0,1fr) auto!important;grid-template-rows:auto auto!important;column-gap:10px!important;row-gap:3px!important;min-height:88px!important;padding:12px!important;border-radius:14px!important;text-align:left!important}
  body.apply-standalone[data-v325-phase='plan'] #appPage .billing-mode-card .mode-icon{grid-column:1!important;grid-row:1/3!important;width:40px!important;height:40px!important;font-size:12px!important}
  body.apply-standalone[data-v325-phase='plan'] #appPage .mode-copy{grid-column:2!important;grid-row:1/3!important;align-self:center!important}
  body.apply-standalone[data-v325-phase='plan'] #appPage .mode-copy small{font-size:8px!important}
  body.apply-standalone[data-v325-phase='plan'] #appPage .mode-copy b{font-size:17px!important;line-height:1.2!important}
  body.apply-standalone[data-v325-phase='plan'] #appPage .mode-copy p{font-size:9px!important;line-height:1.35!important;margin-top:3px!important}
  body.apply-standalone[data-v325-phase='plan'] #appPage .mode-rate{grid-column:3!important;grid-row:1/3!important;align-self:center!important;justify-self:end!important;display:grid!important;gap:1px!important;border:0!important;padding:0!important;margin:0!important;text-align:right!important}
  body.apply-standalone[data-v325-phase='plan'] #appPage .mode-rate b{font-size:17px!important}
  body.apply-standalone[data-v325-phase='plan'] #appPage .mode-rate small,body.apply-standalone[data-v325-phase='plan'] #appPage .mode-rate del{font-size:8px!important}
  body.apply-standalone[data-v325-phase='plan'] #appPage .smart-nav,
  body.apply-standalone[data-v325-phase='month'] #appPage .smart-nav,
  body.apply-standalone[data-v325-phase='frequency'] #appPage .smart-nav{position:static!important;inset:auto!important;transform:none!important;margin:10px 0 0!important;padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important;display:grid!important;grid-template-columns:minmax(104px,.7fr) minmax(0,1.3fr)!important;gap:8px!important}
  body.apply-standalone[data-v325-phase='plan'] #appPage .smart-nav button,
  body.apply-standalone[data-v325-phase='month'] #appPage .smart-nav button,
  body.apply-standalone[data-v325-phase='frequency'] #appPage .smart-nav button{min-height:44px!important;padding:8px 10px!important;font-size:12px!important;border-radius:11px!important}
  body.apply-standalone[data-v325-phase='month'] #appPage .pricing-section-head,
  body.apply-standalone[data-v325-phase='frequency'] #appPage .pricing-section-head{display:none!important}
  body.apply-standalone[data-v325-phase='month'] #appPage .pricing-section,
  body.apply-standalone[data-v325-phase='frequency'] #appPage .pricing-section{padding:13px!important;border-radius:16px!important;margin-top:8px!important}
  body.apply-standalone[data-v325-phase='month'] #appPage .month-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:7px!important;margin:0!important}
  body.apply-standalone[data-v325-phase='month'] #appPage .month-card{min-width:0!important;min-height:67px!important;padding:9px 6px!important;border-radius:11px!important;text-align:center!important;overflow:hidden!important}
  body.apply-standalone[data-v325-phase='month'] #appPage .month-card small{font-size:8px!important;line-height:1.2!important}
  body.apply-standalone[data-v325-phase='month'] #appPage .month-card b,body.apply-standalone[data-v325-phase='month'] #appPage .month-card strong{font-size:12px!important;line-height:1.3!important;word-break:keep-all!important}
  body.apply-standalone[data-v325-phase='month'] #appPage .month-card .arrow,body.apply-standalone[data-v325-phase='month'] #appPage .month-card>[aria-hidden='true']{display:none!important}
  body.apply-standalone[data-v325-phase='frequency'] #appPage .frequency-grid{display:grid!important;grid-template-columns:repeat(7,minmax(0,1fr))!important;gap:5px!important;margin:0!important;overflow:visible!important}
  body.apply-standalone[data-v325-phase='frequency'] #appPage .freq-button{min-width:0!important;width:100%!important;min-height:58px!important;padding:6px 2px!important;border-radius:11px!important;display:grid!important;place-items:center!important;align-content:center!important;gap:1px!important;font-size:9px!important;line-height:1.1!important;white-space:normal!important;letter-spacing:-.04em!important}
  body.apply-standalone[data-v325-phase='frequency'] #appPage .freq-button b,body.apply-standalone[data-v325-phase='frequency'] #appPage .freq-button strong{font-size:18px!important;line-height:1!important}
  body.apply-standalone[data-v325-phase='frequency'] #appPage .pricing-facts{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:6px!important;margin-top:9px!important}
  body.apply-standalone[data-v325-phase='frequency'] #appPage .pricing-fact{min-height:54px!important;padding:8px!important;font-size:9px!important}

  /* Step 4: fit all seven weekdays, reserve horizontal scrolling for time cards only. */
  body.apply-standalone[data-smart-main-step='4'] #appPage .v329-day-tabs{display:grid!important;grid-template-columns:repeat(7,minmax(0,1fr))!important;gap:4px!important;width:100%!important;max-width:100%!important;overflow:visible!important;padding:0!important;margin:8px 0 10px!important}
  body.apply-standalone[data-smart-main-step='4'] #appPage .v329-day-tabs .day-tab{min-width:0!important;width:100%!important;min-height:43px!important;padding:6px 1px!important;border-radius:9px!important;font-size:10px!important;line-height:1.15!important;white-space:nowrap!important}
  body.apply-standalone[data-smart-main-step='4'] #appPage .schedule-panel{padding:12px!important}
  body.apply-standalone[data-smart-main-step='4'] #stepContent{padding-bottom:82px!important}

  /* Teacher detail */
  body.apply-standalone #teacherDetailModal{padding:8px!important;align-items:flex-start!important}
  body.apply-standalone #teacherDetailModal .m2813-detail-card{max-height:calc(100dvh - 16px)!important;border-radius:18px!important}
  body.apply-standalone #teacherDetailBody .m2813-detail-head{grid-template-columns:58px minmax(0,1fr)!important;gap:12px!important;padding:18px 54px 16px 14px!important}
  body.apply-standalone #teacherDetailBody .m2813-detail-avatar{width:58px!important;height:58px!important;min-width:58px!important;border-radius:16px!important}
  body.apply-standalone #teacherDetailBody .v329-role-breakdown{grid-template-columns:1fr!important;gap:5px!important;margin-top:7px}
  body.apply-standalone #teacherDetailBody .v329-role-breakdown>span{padding:7px 8px}
  body.apply-standalone #teacherDetailBody .v329-teacher-specialties{margin:10px 14px 0!important;padding:13px!important}
  body.apply-standalone #teacherDetailBody .v329-specialty-row{grid-template-columns:1fr!important;gap:5px!important;padding:8px!important}
  body.apply-standalone #teacherDetailBody .m2813-detail-actions{padding:10px 14px calc(11px + env(safe-area-inset-bottom))!important}
  body.apply-standalone #teacherDetailBody .m2813-detail-actions .btn{width:min(230px,82vw)!important;min-height:44px!important;font-size:13px!important}

  /* Quote mobile alignment */
  body.apply-standalone #appPage .quote-card{padding:14px!important;border-radius:17px!important}
  body.apply-standalone #appPage .quote-grid{gap:7px!important}
  body.apply-standalone #appPage .quote-grid>div{padding:11px!important;min-height:83px!important}
  body.apply-standalone #appPage .quote-grid b,body.apply-standalone #appPage .quote-grid strong{font-size:12px!important;line-height:1.45!important}
  body.apply-standalone #appPage .quote-breakdown{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px!important}
  body.apply-standalone #appPage .quote-breakdown>div{padding:11px!important}
  body.apply-standalone #appPage .quote-total{grid-template-columns:minmax(0,1fr) auto!important;gap:10px!important;padding:16px 14px!important}
  body.apply-standalone #appPage .quote-total strong{font-size:clamp(24px,8vw,34px)!important}
}
@media(max-width:380px){
  body.apply-standalone #appPage .app-content{padding-inline:10px!important}
  body.apply-standalone[data-v325-phase='course'] #appPage .course-choice-grid:not(.smart-hidden){gap:5px!important}
  body.apply-standalone[data-v325-phase='course'] #appPage .choice-card{padding:10px 6px!important;min-height:99px!important}
  body.apply-standalone[data-v325-phase='course'] #appPage .choice-card h3{font-size:15px!important}
  body.apply-standalone[data-v325-phase='frequency'] #appPage .frequency-grid{gap:3px!important}
  body.apply-standalone[data-v325-phase='frequency'] #appPage .freq-button{min-height:54px!important;font-size:8px!important}
  body.apply-standalone[data-smart-main-step='4'] #appPage .v329-day-tabs{gap:2px!important}
  body.apply-standalone[data-smart-main-step='4'] #appPage .v329-day-tabs .day-tab{font-size:9px!important}
}
