/* Tính GPA mục tiêu — tông sáng Intracom */
.igpat{--ink:#1C0045;--mut:#6b5e86;--line:#e8e1f2;--surface:#f7f5fb;--accent:#1C0045;--accent2:#E7C638;
  --ok:#1a8a5a;--bad:#c0392b;--badbg:#fdecea;box-sizing:border-box;width:100%;max-width:820px;margin:0 auto;font-family:inherit;color:var(--ink);}
.igpat *,.igpat *::before,.igpat *::after{box-sizing:border-box;}
.igpat__inner{position:relative;overflow:hidden;padding:clamp(16px,3.5vw,30px);border-radius:20px;margin-bottom:20px;
  background:radial-gradient(120% 90% at 100% -12%,color-mix(in srgb,var(--accent2) 13%,transparent),transparent 55%),#fff;
  border:1px solid var(--line);box-shadow:0 20px 50px -34px rgba(28,0,69,.35);}
.igpat__inner::before{content:"";position:absolute;inset:0 0 auto 0;height:3px;background:linear-gradient(90deg,var(--accent),var(--accent2));}
.igpat__eyebrow{margin:0;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);font-weight:700;}
.igpat__title{font-weight:800;font-size:clamp(19px,3.2vw,26px);margin:3px 0 0;line-height:1.15;}
.igpat__intro{margin:8px 0 18px;font-size:14px;color:var(--mut);line-height:1.5;}

.igpat__grid{display:grid;grid-template-columns:1fr;gap:16px;}
@media(min-width:680px){.igpat__grid{grid-template-columns:1fr 1fr;align-items:stretch;}}

.igpat__scale{display:flex;align-items:center;gap:6px;margin-bottom:6px;font-size:13px;color:var(--mut);font-weight:600;}
.igpat__sc{cursor:pointer;font-family:inherit;font-weight:700;font-size:13px;color:var(--mut);background:var(--surface);border:1px solid var(--line);padding:6px 12px;border-radius:8px;margin:0;}
.igpat__sc.is-active{background:var(--accent);color:#fff;border-color:var(--accent);}
.igpat__lbl{display:block;font-weight:700;font-size:14px;margin:14px 0 6px;}
.igpat__in,.igpat input.igpat__in{font-family:inherit;font-size:16px;color:var(--ink);width:100%;padding:12px 14px;min-height:48px;border:1px solid #c7bcdf;border-radius:12px;background:#fff;margin:0;}
.igpat__in:focus{outline:2px solid var(--accent);outline-offset:1px;}
.igpat__in.err{border-color:var(--bad);background:var(--badbg);}
.igpat__btn{cursor:pointer;font-family:inherit;font-weight:700;font-size:16px;color:#fff;width:100%;padding:15px 20px;border:0;border-radius:12px;margin:18px 0 0;
  background:var(--accent);box-shadow:0 12px 26px -14px color-mix(in srgb,var(--accent) 80%,transparent);transition:filter .15s,transform .15s;}
.igpat__btn:hover{filter:brightness(1.15);transform:translateY(-1px);}
.igpat__btn:focus-visible,.igpat__sc:focus-visible,.igpat__cta:focus-visible{outline:2px solid var(--accent);outline-offset:2px;}
.igpat__err{min-height:1.1em;margin:9px 0 0;font-size:13px;color:var(--bad);font-weight:600;}

.igpat__card{display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;
  padding:24px 20px;border:1px solid var(--line);border-radius:16px;background:var(--surface);}
.igpat__card-label{margin:0;font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:var(--mut);font-weight:700;}
.igpat__value{font-weight:800;font-size:clamp(40px,10vw,58px);line-height:1.05;color:var(--accent);margin:10px 0 4px;font-variant-numeric:tabular-nums;letter-spacing:.02em;}
.igpat__value.bad{color:var(--bad);}
.igpat__value.good{color:var(--ok);}
.igpat__bar{position:relative;width:100%;max-width:260px;height:8px;border-radius:999px;background:#e6e0f0;margin:8px 0 12px;overflow:visible;}
.igpat__bar-fill{position:absolute;left:0;top:0;bottom:0;width:0;border-radius:999px;background:linear-gradient(90deg,var(--accent),var(--accent2));transition:width .4s ease;}
.igpat__bar-mark{position:absolute;top:-4px;width:2px;height:16px;background:var(--ink);left:0;opacity:0;transition:left .4s ease;}
.igpat__row{display:flex;justify-content:space-between;width:100%;max-width:260px;font-size:13px;color:var(--mut);}
.igpat__row b{color:var(--ink);}
.igpat__msg{margin:12px 0 0;font-size:13.5px;line-height:1.5;color:var(--mut);}

.igpat__cta{display:block;text-align:center;text-decoration:none;margin:16px 0 0;font-weight:700;font-size:15px;color:#0c1030;
  padding:13px 20px;border-radius:12px;background:linear-gradient(90deg,var(--accent2),color-mix(in srgb,var(--accent2) 60%,#fff));}
.igpat__cta2{display:block;text-align:center;text-decoration:none;margin:10px 0 0;font-weight:700;font-size:15px;color:var(--accent);padding:13px 20px;border-radius:12px;background:#fff;border:1.5px solid var(--accent);}
.igpat__cta2:hover{background:var(--surface);}
.igpat__formula{margin:18px 0 0;border-top:1px solid var(--line);padding-top:14px;}
.igpat__formula summary{cursor:pointer;font-weight:700;font-size:14px;}
.igpat__formula p{font-size:13px;line-height:1.55;color:var(--mut);margin:10px 0 0;}
.igpat__eq{background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:10px 12px;color:var(--ink)!important;}
.igpat__foot{margin:18px 0 0;}
.igpat__logo{height:70px;width:auto;display:block;margin:auto;}
