.gpa-tool{gap:18px}.gpa-optbar{display:flex;flex-wrap:wrap;align-items:flex-end;gap:14px 18px;padding:14px 16px;background:var(--bg-soft);border:1px solid var(--border);border-radius:var(--r-md)}.gpa-opt{display:flex;flex-direction:column;gap:7px;flex:1 1 170px;min-width:0}.gpa-field>label,.gpa-opt>label,.gpa-opt>span{font-size:.8rem;font-weight:600;color:var(--muted)}.gpa-field .tool-in,.gpa-opt .tool-in{padding:10px 12px;font-size:.94rem}.gpa-opt select.tool-in{padding-right:34px}.gpa-seg{display:inline-flex;gap:4px;padding:4px;background:var(--card);border:1.5px solid var(--border-strong);border-radius:var(--r-pill)}.gpa-segbtn{flex:1 1 50%;padding:7px 14px;border-radius:var(--r-pill);font-size:.84rem;font-weight:600;color:var(--muted);white-space:nowrap;transition:background var(--transition),color var(--transition)}.gpa-segbtn:hover{color:var(--primary)}.gpa-segbtn.active{background:var(--primary-grad);color:#fff;box-shadow:var(--shadow-primary)}.gpa-course{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,132px);gap:8px}.gpa-course .gpa-level{font-size:.86rem}.gpa-cum{margin-top:18px;padding:14px 16px;border:1px dashed var(--border-strong);border-radius:var(--r-md);background:var(--card)}.gpa-cumhead{display:flex;flex-direction:column;gap:2px;margin-bottom:12px}.gpa-cumtitle{font-size:.95rem;font-weight:700;color:var(--heading)}.gpa-cumsub{font-size:.82rem;line-height:1.5;color:var(--muted)}.gpa-cumgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.gpa-field{display:flex;flex-direction:column;gap:6px;min-width:0}.gpa-sub{display:flex;flex-wrap:wrap;gap:8px 22px;margin:10px 0 0;padding-top:10px;border-top:1px solid rgba(255,255,255,.14)}.gpa-sub>div{display:flex;flex-direction:column;gap:1px}.gpa-sub>div[hidden]{display:none}.gpa-sub dt{font-size:.7rem;font-weight:600;letter-spacing:.4px;text-transform:uppercase;color:rgba(255,255,255,.55)}.gpa-sub dd{margin:0;font-size:1.08rem;font-weight:700;color:#fff}.gpa-aside{margin:0;font-size:.84rem;color:var(--muted)}.gpa-aside a{color:var(--primary);font-weight:600}.gpa-support{padding-block:30px;background:var(--bg)}.gpa-block{height:100%;padding:24px;background:var(--card);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-sm)}.gpa-block h2{font-size:1.08rem;font-weight:700;color:var(--heading);margin-bottom:6px}.gpa-block h2 .micon{width:20px;height:20px;margin-right:7px;vertical-align:-3px;color:var(--primary)}.gpa-blocksub{font-size:.86rem;line-height:1.6;color:var(--muted);margin-bottom:16px}.gpa-blockfoot{margin-top:12px;font-size:.82rem;line-height:1.6;color:var(--muted)}.gpa-tablewrap{overflow-x:auto;-webkit-overflow-scrolling:touch}.gpa-tablewrap .ref-table{min-width:540px;margin-top:4px}.gpa-tablewrap .ref-table td,.gpa-tablewrap .ref-table th{padding:9px 12px}.gpa-tablewrap .ref-table .num{text-align:right;white-space:nowrap}[data-theme=dark] .gpa-aside a{color:var(--primary-light)}@media (max-width:767.98px){.gpa-cumgrid{grid-template-columns:1fr 1fr}.gpa-cumgrid .gpa-field:last-child{grid-column:1/-1}}@media (max-width:560px){.gpa-optbar{padding:12px}.gpa-seg{width:100%}.gpa-course{grid-template-columns:minmax(0,1fr) minmax(0,120px)}.gpa-cum{padding:12px}.gpa-block{padding:18px}}