.af8-root,.af8-root *{box-sizing:border-box}
.af8-root{--af8-ink:#122033;--af8-muted:#667085;--af8-line:#e1e7ef;--af8-soft:#f5f7fa;--af8-gold:#c69431;--af8-gold2:#f5e4bd;--af8-navy:#14243a;--af8-green:#18775a;--af8-warn:#9a5b1a;min-height:calc(100vh - 110px);background:linear-gradient(180deg,#f8fafc 0,#fff 280px);color:var(--af8-ink);font-family:Inter,'Noto Sans KR','Noto Sans JP',system-ui,sans-serif;padding:0 0 64px}
.af8-wrap{width:min(1040px,calc(100% - 32px));margin:0 auto}
.af8-hero{padding:56px 0 30px;text-align:center}
.af8-eyebrow{display:inline-flex;align-items:center;gap:7px;margin:0 0 15px;padding:7px 12px;border:1px solid #e4c983;border-radius:999px;background:#fff8e8;color:#7d5a14;font-size:12px;font-weight:900;letter-spacing:.04em}
.af8-hero h1{margin:0;color:#101a2a;font-size:clamp(30px,5vw,50px);line-height:1.18;letter-spacing:-.045em}
.af8-hero p{max-width:760px;margin:17px auto 0;color:var(--af8-muted);font-size:16px;line-height:1.8}
.af8-note{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;margin-top:18px}.af8-note span{padding:7px 11px;border:1px solid var(--af8-line);border-radius:999px;background:#fff;color:#596579;font-size:12px;font-weight:700}
.af8-progress{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin:0 0 18px}.af8-progress span{display:flex;align-items:center;justify-content:center;gap:8px;padding:11px 8px;border:1px solid var(--af8-line);border-radius:12px;background:#fff;color:#596579;font-size:12px;font-weight:800}.af8-progress b{display:grid;place-items:center;width:23px;height:23px;border-radius:50%;background:var(--af8-navy);color:#fff;font-size:11px}
.af8-card{margin:14px 0;padding:25px;border:1px solid var(--af8-line);border-radius:22px;background:#fff;box-shadow:0 12px 34px rgba(20,36,58,.06)}
.af8-card-head{margin-bottom:21px}.af8-step-label{margin:0 0 6px;color:#a16e17;font-size:11px;font-weight:900;letter-spacing:.08em}.af8-card h2{margin:0;font-size:23px;line-height:1.35;letter-spacing:-.03em}.af8-card-head>p{margin:8px 0 0;color:var(--af8-muted);font-size:13px;line-height:1.65}
.af8-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.af8-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.af8-field{min-width:0}.af8-field-wide{grid-column:1/-1}.af8-field label,.af8-field legend{display:block;margin:0 0 7px;color:#344054;font-size:13px;font-weight:800}.af8-required::after{content:' *';color:#c4583c}.af8-help{display:block;margin-top:6px;color:#7b8492;font-size:11px;line-height:1.5}
.af8-field input[type=text],.af8-field input[type=date],.af8-field input[type=time],.af8-field select,.af8-field textarea{width:100%;min-height:46px;padding:11px 13px;border:1px solid #d7dee8;border-radius:12px;background:#fff;color:#202c3d;font:inherit;font-size:14px;outline:none;transition:.15s}.af8-field textarea{min-height:92px;resize:vertical;line-height:1.55}.af8-field input:focus,.af8-field select:focus,.af8-field textarea:focus{border-color:#b88726;box-shadow:0 0 0 3px rgba(198,148,49,.14)}
.af8-check{display:flex;align-items:center;gap:8px;margin-top:8px;color:#596579;font-size:12px;font-weight:700}.af8-check input{width:16px;height:16px;accent-color:var(--af8-navy)}
.af8-group{margin-top:22px;padding-top:20px;border-top:1px solid #edf0f4}.af8-group:first-of-type{margin-top:0;padding-top:0;border-top:0}.af8-group h3{margin:0 0 4px;font-size:15px}.af8-group>p{margin:0 0 12px;color:var(--af8-muted);font-size:12px;line-height:1.55}
.af8-chips{display:flex;flex-wrap:wrap;gap:8px}.af8-chip{appearance:none;border:1px solid #d7dee8;border-radius:999px;background:#fff;padding:9px 12px;color:#344054;font:inherit;font-size:12.5px;font-weight:750;cursor:pointer;transition:.15s}.af8-chip:hover{border-color:#c69431}.af8-chip.is-selected{border-color:var(--af8-navy);background:var(--af8-navy);color:#fff}.af8-chip:focus-visible{outline:3px solid rgba(198,148,49,.25);outline-offset:2px}
.af8-balance{display:grid;gap:16px}.af8-balance-item{padding:17px;border:1px solid #e2e7ee;border-radius:15px;background:#fbfcfe}.af8-balance-item h3{margin:0 0 11px;font-size:14px;line-height:1.5}.af8-radio-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.af8-radio{display:flex;align-items:flex-start;gap:8px;padding:10px;border:1px solid #e0e5ec;border-radius:11px;background:#fff;color:#4a5568;font-size:12px;line-height:1.5;cursor:pointer}.af8-radio input{margin-top:2px;accent-color:var(--af8-navy)}
.af8-submit-box{margin-top:18px;padding:24px;border-radius:22px;background:var(--af8-navy);color:#fff;text-align:center}.af8-submit-box p{margin:0 0 14px;color:rgba(255,255,255,.72);font-size:12px;line-height:1.65}.af8-submit{min-width:250px;border:0;border-radius:13px;background:#e0b55c;color:#121b28;padding:14px 22px;font:inherit;font-size:15px;font-weight:900;cursor:pointer}.af8-submit:disabled{opacity:.6;cursor:wait}.af8-error{display:none;margin:13px 0 0;padding:12px;border:1px solid #f0bbb2;border-radius:11px;background:#fff1ef;color:#99392d;font-size:13px;font-weight:750;white-space:pre-line}.af8-error.is-show{display:block}
html.af8-modal-lock,body.af8-modal-lock{overflow:hidden!important}
.af8-modal-overlay{position:fixed;inset:0;z-index:99990;display:flex;align-items:center;justify-content:center;padding:20px;opacity:0;visibility:hidden;transition:opacity .18s ease,visibility .18s ease;font-family:Inter,'Noto Sans KR','Noto Sans JP',system-ui,sans-serif}
.af8-modal-overlay[hidden]{display:none}
.af8-modal-overlay.is-open{opacity:1;visibility:visible}
.af8-modal-backdrop{position:absolute;inset:0;border:0;margin:0;padding:0;background:rgba(10,17,28,.62);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);cursor:default}
.af8-modal-dialog{position:relative;width:min(420px,100%);max-height:calc(100dvh - 40px);overflow:auto;padding:30px 26px 26px;border-radius:20px;background:#fff;box-shadow:0 24px 70px rgba(10,17,28,.32);text-align:center;transform:translateY(10px) scale(.98);transition:transform .18s ease;outline:none;box-sizing:border-box}
.af8-modal-overlay.is-open .af8-modal-dialog{transform:translateY(0) scale(1)}
.af8-modal-close{position:absolute;top:12px;right:12px;width:32px;height:32px;border:0;border-radius:50%;background:#f2f4f7;color:#596579;font-size:19px;line-height:1;cursor:pointer;display:grid;place-items:center;transition:.15s}
.af8-modal-close:hover{background:#e7eaef;color:#22303f}
.af8-modal-icon{display:grid;place-items:center;width:48px;height:48px;margin:0 auto 14px;border-radius:50%;background:#fff1ef;color:#c4583c;font-size:22px;font-weight:900}
.af8-modal-title{margin:0 0 9px;font-size:17px;line-height:1.4;font-weight:900;color:#182338;letter-spacing:-.01em}
.af8-modal-desc{margin:0;color:#596579;font-size:13.5px;line-height:1.7;white-space:pre-line}
.af8-modal-confirm{appearance:none;margin-top:22px;min-width:140px;border:0;border-radius:12px;background:var(--af8-navy);color:#fff;padding:12px 18px;font:inherit;font-size:13.5px;font-weight:900;cursor:pointer;transition:.15s}
.af8-modal-confirm:hover{background:#1b2c46}
.af8-modal-confirm:focus-visible,.af8-modal-close:focus-visible{outline:3px solid rgba(198,148,49,.35);outline-offset:2px}
@media (max-width:480px){.af8-modal-dialog{padding:26px 20px 22px}}
.af8-result[hidden]{display:none}.af8-result{margin-top:26px}.af8-result-hero{padding:30px;border-radius:22px;background:linear-gradient(145deg,#14243a,#263b59);color:#fff;text-align:center}.af8-result-hero p{margin:0 0 8px;color:#e9c778;font-size:12px;font-weight:900;letter-spacing:.07em}.af8-result-hero h2{margin:0;font-size:clamp(25px,4vw,36px);line-height:1.35}.af8-result-hero .af8-summary{max-width:760px;margin:14px auto 0;color:rgba(255,255,255,.78);font-size:14px;line-height:1.75}
.af8-result-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:14px}.af8-rank-card{position:relative;padding:21px;border:1px solid var(--af8-line);border-radius:18px;background:#fff}.af8-rank-card:first-child{border-color:#d7b15c;background:#fffbf1}.af8-rank{display:inline-flex;padding:5px 9px;border-radius:999px;background:#eef2f7;color:#536075;font-size:11px;font-weight:900}.af8-rank-card:first-child .af8-rank{background:#f3dfae;color:#78540d}.af8-rank-card h3{margin:12px 0 6px;font-size:18px;line-height:1.4}.af8-fit{margin:0 0 10px;color:#9a6916;font-size:12px;font-weight:900}.af8-rank-card p{margin:0;color:#5f6b7c;font-size:13px;line-height:1.65}
.af8-result-card{margin-top:13px;padding:22px;border:1px solid var(--af8-line);border-radius:18px;background:#fff}.af8-result-card h3{margin:0 0 12px;font-size:17px}.af8-major-list{display:flex;flex-wrap:wrap;gap:8px}.af8-major-list span{padding:8px 11px;border-radius:999px;background:#eff3f7;color:#344054;font-size:12px;font-weight:800}.af8-lock{margin-top:12px;padding:12px;border-radius:11px;background:#f7f8fa;color:#687385;font-size:12px;line-height:1.6}.af8-myth{display:grid;grid-template-columns:1fr 1fr;gap:10px}.af8-myth div{padding:14px;border-radius:12px;font-size:13px;line-height:1.65}.af8-myth .bad{background:#fff2ef;color:#8f4034}.af8-myth .good{background:#edf8f4;color:#27664f}.af8-teaser{padding-left:17px;border-left:3px solid #d3a344;color:#4f5b6d;font-size:13px;line-height:1.75}.af8-disclaimer{margin-top:13px;color:#778190;font-size:11px;line-height:1.65}
.af8-cta{margin-top:14px;padding:25px;border-radius:20px;background:#f7f1e4;text-align:center}.af8-cta h3{margin:0 0 7px;font-size:19px}.af8-cta p{margin:0 auto 17px;max-width:700px;color:#657083;font-size:12px;line-height:1.7}.af8-cta-actions{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}.af8-cta a{display:inline-flex;align-items:center;justify-content:center;min-width:240px;padding:13px 18px;border-radius:12px;text-decoration:none;font-size:13px;font-weight:900}.af8-cta .mini{border:1px solid #b7862b;background:#fff;color:#7b5714}.af8-cta .full{border:1px solid var(--af8-navy);background:var(--af8-navy);color:#fff}
.af8-loading{display:none;align-items:center;justify-content:center;gap:9px;margin-top:13px;color:#fff;font-size:12px}.af8-loading.is-show{display:flex}.af8-spinner{width:17px;height:17px;border:2px solid rgba(255,255,255,.28);border-top-color:#fff;border-radius:50%;animation:af8spin .7s linear infinite}@keyframes af8spin{to{transform:rotate(360deg)}}
@media(max-width:760px){.af8-wrap{width:min(100% - 22px,1040px)}.af8-hero{padding:38px 0 22px}.af8-progress{grid-template-columns:repeat(2,1fr)}.af8-card{padding:19px;border-radius:17px}.af8-grid,.af8-grid-3,.af8-result-grid{grid-template-columns:1fr}.af8-radio-grid{grid-template-columns:1fr}.af8-myth{grid-template-columns:1fr}.af8-submit{width:100%;min-width:0}.af8-cta a{width:100%;min-width:0}.af8-result-hero{padding:24px 18px}}


/* Major Fit 2.0 v41: Career Fit-style text birth input; no native date/time picker. */
.af8-birth-field{grid-column:1/-1}
.af8-birth-row{display:grid;grid-template-columns:110px minmax(210px,1fr) 118px minmax(176px,auto);gap:10px;align-items:center}
.af8-birth-row .af8-birth-calendar,.af8-birth-row .af8-birth-date,.af8-birth-row .af8-birth-time{min-width:0;margin:0}
.af8-field .af8-time-unknown{display:flex;align-items:center;justify-content:flex-start;gap:8px;min-height:46px;margin:0;padding:9px 12px;border:1px solid #d7dee8;border-radius:12px;background:#f8fafc;color:#4e5b6d;font-size:12px;font-weight:800;cursor:pointer;white-space:normal}
.af8-field .af8-time-unknown input{flex:0 0 auto;width:17px;height:17px;margin:0;accent-color:var(--af8-navy)}
.af8-birth-help{margin:7px 0 0;color:#778190;font-size:11px;line-height:1.55}
.af8-field-error{margin:7px 0 0;color:#a63d32;font-size:12px;font-weight:800;line-height:1.5}
.af8-field input.is-invalid,.af8-field select.is-invalid{border-color:#d95d4f!important;box-shadow:0 0 0 3px rgba(217,93,79,.13)!important}
.af8-birth-row input[type="text"]{-webkit-appearance:none;appearance:none}
@media(max-width:760px){
  .af8-birth-row{grid-template-columns:94px minmax(0,1fr);gap:9px}
  .af8-birth-calendar{grid-column:1;grid-row:1}
  .af8-birth-date{grid-column:2;grid-row:1}
  .af8-birth-time{grid-column:1;grid-row:2;text-align:center}
  .af8-field .af8-time-unknown{grid-column:2;grid-row:2;min-width:0}
  .af8-birth-row input,.af8-birth-row select{font-size:16px!important}
}
@media(max-width:380px){
  .af8-birth-row{grid-template-columns:84px minmax(0,1fr);gap:8px}
  .af8-field .af8-time-unknown{padding-left:10px;padding-right:8px;font-size:11px}
}

/* Major Fit 2.0 v43 — separate AI analysis result window with Myeongri support guidance. */
.af8-result-page{min-height:calc(100vh - 110px);background:linear-gradient(180deg,#f7f9fc 0,#fff 340px);padding:36px 0 70px;color:var(--af8-ink)}
.af8-result-page .af8-wrap{width:min(960px,calc(100% - 28px))}
.af8-waiting{min-height:580px;display:grid;place-items:center;padding:34px 0}
.af8-waiting[hidden],.af8-error-panel[hidden],.af8-result-page .af8-result[hidden],.af8-result-card[hidden]{display:none!important}
.af8-wait-card{width:min(620px,100%);padding:34px 30px;border-radius:24px;background:linear-gradient(150deg,#111d2f,#203552);color:#fff;text-align:center;box-shadow:0 24px 70px rgba(15,24,38,.25)}
.af8-wait-spinner{width:58px;height:58px;margin:0 auto 20px;border:4px solid rgba(255,255,255,.18);border-top-color:#e4bd68;border-radius:50%;animation:af8spin .85s linear infinite}
.af8-wait-card h1{margin:0;font-size:clamp(24px,5vw,34px);line-height:1.35;letter-spacing:-.035em}
.af8-wait-lead{max-width:520px;margin:13px auto 0;color:rgba(255,255,255,.77);font-size:14px;line-height:1.75}
.af8-wait-stage{margin:22px 0 0;padding:14px 16px;border:1px solid rgba(255,255,255,.15);border-radius:14px;background:rgba(255,255,255,.08);font-size:14px;font-weight:900;line-height:1.65}
.af8-stage-dots{display:flex;justify-content:center;gap:7px;margin:16px 0 0}.af8-stage-dots span{width:9px;height:9px;border-radius:50%;background:rgba(255,255,255,.2);transition:.2s}.af8-stage-dots span.is-on{background:#e4bd68;box-shadow:0 0 0 4px rgba(228,189,104,.13)}
.af8-wait-meta{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:18px}.af8-wait-meta span{padding:7px 10px;border-radius:999px;background:rgba(255,255,255,.09);color:rgba(255,255,255,.78);font-size:11px;font-weight:800}
.af8-wait-delay{margin:18px 0 0;color:#f2d79a;font-size:12px;line-height:1.7}
.af8-error-panel{min-height:520px;display:grid;place-items:center;padding:34px 0}
.af8-error-card{width:min(620px,100%);padding:30px;border:1px solid #ecc5be;border-radius:22px;background:#fff;box-shadow:0 18px 50px rgba(20,36,58,.1);text-align:center}
.af8-error-icon{display:grid;place-items:center;width:52px;height:52px;margin:0 auto 16px;border-radius:50%;background:#fff0ed;color:#a84133;font-size:24px;font-weight:900}
.af8-error-card h1{margin:0;font-size:25px;line-height:1.45}.af8-error-card p{margin:12px 0 0;color:#697486;font-size:13px;line-height:1.7;white-space:pre-line}
.af8-error-actions{display:flex;justify-content:center;gap:9px;flex-wrap:wrap;margin-top:22px}.af8-error-actions a,.af8-error-actions button{appearance:none;display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:11px 17px;border-radius:12px;font:inherit;font-size:13px;font-weight:900;text-decoration:none;cursor:pointer}.af8-error-actions button{border:0;background:var(--af8-navy);color:#fff}.af8-error-actions a{border:1px solid #d8dfe8;background:#fff;color:#344054}.af8-error-actions .af8-close{border:1px solid #e2e7ee;background:#f7f9fb;color:#596579}
.af8-result-page .af8-result{margin:0}.af8-ai-badge{display:inline-flex;align-items:center;gap:7px;margin:0 auto 12px;padding:7px 11px;border:1px solid rgba(234,201,119,.42);border-radius:999px;background:rgba(228,189,104,.13);color:#f3d98f;font-size:11px;font-weight:900;letter-spacing:.035em}.af8-ai-badge:before{content:'AI';display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#e4bd68;color:#14243a;font-size:9px}
.af8-result-page .af8-result-hero{position:relative;overflow:hidden}.af8-result-page .af8-result-hero:after{content:'';position:absolute;right:-80px;top:-100px;width:260px;height:260px;border-radius:50%;background:radial-gradient(circle,rgba(228,189,104,.18),transparent 66%);pointer-events:none}
.af8-result-section-title{margin:0 0 11px;font-size:17px}.af8-evidence-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0;padding:0;list-style:none}.af8-evidence-list li,.af8-rank-evidence li{position:relative;padding:10px 11px 10px 29px;border-radius:11px;background:#f6f8fb;color:#4f5d70;font-size:12px;line-height:1.55}.af8-evidence-list li:before,.af8-rank-evidence li:before{content:'✓';position:absolute;left:11px;top:10px;color:#24735a;font-weight:900}
.af8-rank-evidence{margin:13px 0 0;padding:0;list-style:none}.af8-rank-evidence li{margin-top:6px;padding-top:7px;padding-bottom:7px;background:#f8fafc;font-size:11px}.af8-rank-evidence li:before{top:7px}
.af8-result-actions-top{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:0 0 13px}.af8-result-actions-top a{font-size:12px;font-weight:850;color:#526175;text-decoration:none}.af8-result-actions-top a:hover{text-decoration:underline}
.af8-review-meta{margin-top:10px;color:#7b8593;font-size:10.5px;text-align:right}
@media(max-width:760px){
  .af8-result-page{padding:18px 0 48px}.af8-waiting,.af8-error-panel{min-height:calc(100vh - 160px);padding:16px 0}.af8-wait-card,.af8-error-card{padding:26px 18px;border-radius:19px}.af8-evidence-list{grid-template-columns:1fr}.af8-result-actions-top{align-items:flex-start;flex-direction:column}.af8-result-page .af8-result-hero{padding-top:28px}
}


/* v43: AI Myeongri support and self-choice comparison */
.af8-myeongri-card{background:linear-gradient(145deg,#fffdf7,#f8fbff)}
.af8-myeongri-summary{margin:0 0 17px;color:#4f5d70;font-size:13.5px;line-height:1.8}
.af8-myeongri-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.af8-myeongri-grid section{min-width:0;padding:15px;border:1px solid #e1e7ef;border-radius:14px;background:rgba(255,255,255,.86)}
.af8-myeongri-grid .af8-myeongri-wide{grid-column:1/-1}
.af8-myeongri-grid h4,.af8-choice-compare h4{margin:0 0 10px;color:#2e3c50;font-size:13px}
.af8-myeongri-tags{display:flex;flex-wrap:wrap;gap:7px}.af8-myeongri-tags span{padding:7px 10px;border-radius:999px;background:#edf3fa;color:#30465f;font-size:11.5px;font-weight:850}
.af8-myeongri-list{display:grid;gap:7px;margin:0;padding:0;list-style:none}.af8-myeongri-list li{position:relative;padding-left:19px;color:#526175;font-size:12px;line-height:1.6}.af8-myeongri-list li:before{content:'✓';position:absolute;left:0;color:#28765d;font-weight:900}
.af8-myeongri-caution{margin-top:12px;padding:12px 14px;border-radius:12px;background:#fff6e8;color:#79551a;font-size:12px;line-height:1.65}
.af8-choice-compare{margin-top:16px;padding-top:16px;border-top:1px solid #e3e8ef}
.af8-choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.af8-choice-grid section{padding:14px;border-radius:13px;background:#f7f9fc}.af8-choice-grid span{display:block;margin-bottom:7px;color:#3c5069;font-size:11px;font-weight:900}.af8-choice-grid p{margin:0;color:#526175;font-size:12.5px;line-height:1.7}
.af8-choice-points{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:10px}.af8-choice-points>div{padding:13px;border:1px solid #e2e7ee;border-radius:12px;background:#fff}.af8-choice-points strong{font-size:11.5px}.af8-choice-points ul{margin:8px 0 0;padding-left:18px;color:#596579;font-size:12px;line-height:1.6}
.af8-choice-guide{margin:11px 0 0;padding:13px 14px;border-left:3px solid #c69431;border-radius:0 10px 10px 0;background:#fffaf0;color:#4b586a;font-size:12.5px;line-height:1.7}
@media(max-width:760px){.af8-myeongri-grid,.af8-choice-grid,.af8-choice-points{grid-template-columns:1fr}.af8-myeongri-grid .af8-myeongri-wide{grid-column:auto}}
