.cf{text-align:left}.cf-group__label{letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);flex:none;font-size:.72rem;font-weight:700}.cf-mode{width:100%;max-width:520px;margin:0 auto var(--space-6);border:1px solid var(--border-hairline);border-radius:var(--radius-pill);background:var(--surface-card);box-shadow:var(--shadow-card);padding:4px;display:flex}.cf-mode__btn{min-width:0;padding:var(--space-2) var(--space-3);border-radius:var(--radius-pill);font-size:var(--text-body-sm);color:var(--text-muted);cursor:pointer;transition:background var(--duration-fast) var(--ease-standard), color var(--duration-fast) var(--ease-standard), box-shadow var(--duration-fast) var(--ease-standard);background:0 0;border:0;flex:1 1 0;font-weight:600}.cf-mode__btn:hover{color:var(--text-heading)}.cf-mode__btn:not(.is-on):hover{background:var(--sage-50)}.cf-mode__btn.is-on{background:linear-gradient(180deg, var(--sage-600), var(--brand-primary));color:#fff;box-shadow:0 4px 14px color-mix(in srgb, var(--brand-primary) 32%, transparent), inset 0 1px 0 #ffffff24}.cf-mode__btn:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.cf-chips{gap:var(--space-2);flex-wrap:wrap;min-width:0;display:flex}.cf-chip{padding:4px var(--space-3);border:1px solid var(--border-hairline);background:var(--surface-card);font-size:var(--text-body-sm);color:var(--text-heading);cursor:pointer;transition:border-color var(--duration-fast) var(--ease-standard), background var(--duration-fast) var(--ease-standard), color var(--duration-fast) var(--ease-standard), box-shadow .25s var(--ease-standard), scale .12s var(--ease-standard);border-radius:999px}.cf-chip:hover{border-color:var(--brand-primary)}.cf-chip:not(.is-on):hover{background:var(--sage-50);border-color:var(--sage-400);box-shadow:0 0 0 3px color-mix(in srgb, var(--brand-primary) 9%, transparent)}.cf-chip:active{scale:.96}.cf-chip:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.cf-chip.is-on{background:var(--brand-primary);border-color:var(--brand-primary);color:#fff;box-shadow:0 0 0 3px color-mix(in srgb, var(--brand-primary) 14%, transparent), 0 4px 14px color-mix(in srgb, var(--brand-primary) 30%, transparent);font-weight:600}.cf-chip.is-on:hover{background:var(--sage-600);border-color:var(--sage-600)}.cf-chip--unlock{border-style:dashed}.cf-chip--unlock b{color:var(--brand-primary);font-weight:700}.cf-chip.cf-chip--unlock:not(.is-on):hover{border-style:solid;border-color:var(--gold-500);background:color-mix(in srgb, var(--gold-100) 60%, var(--surface-card));box-shadow:0 0 0 3px color-mix(in srgb, var(--gold-300) 30%, transparent), 0 4px 14px color-mix(in srgb, var(--gold-500) 22%, transparent)}.cf-picker{gap:var(--space-3);padding:var(--space-5);border:1px solid var(--border-hairline);border-radius:var(--radius-lg);background:var(--surface-card);box-shadow:var(--shadow-card);flex-direction:column;display:flex}.cf-group{gap:var(--space-2);flex-direction:column;display:flex}.cf-hint{margin:var(--space-1) 0 0;font-size:var(--text-body-sm);color:var(--text-muted)}@media (min-width:760px){.cf-group{align-items:baseline;gap:var(--space-3);flex-direction:row}.cf-group .cf-group__label{width:150px}}.cf-yours{margin-top:var(--space-4)}.cf-yours__head{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-2);min-height:32px;display:flex}.cf-clear{padding:4px var(--space-3);font-size:var(--text-body-sm);color:var(--text-muted);cursor:pointer;background:0 0;border:0;text-decoration:underline}.cf-clear:hover{color:var(--text-heading)}.cf-example{padding:var(--space-2) var(--space-4);border:1px dashed var(--brand-primary);border-radius:var(--radius-pill);background:color-mix(in srgb, var(--brand-primary) 6%, transparent);font-size:var(--text-body-sm);color:var(--brand-primary);cursor:pointer;max-width:100%;transition:background var(--duration-fast) var(--ease-standard), box-shadow .25s var(--ease-standard);font-weight:600}.cf-example:hover{background:color-mix(in srgb, var(--brand-primary) 12%, transparent);box-shadow:0 0 0 3px color-mix(in srgb, var(--brand-primary) 9%, transparent), 0 4px 14px color-mix(in srgb, var(--brand-primary) 16%, transparent)}.cf-rows{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}@media (min-width:760px){.cf-rows{grid-template-columns:repeat(2,minmax(0,1fr))}}.cf-row{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-2) var(--space-2) var(--space-3);border:1px solid var(--border-hairline);border-radius:var(--radius-md);background:var(--surface-card);box-shadow:var(--shadow-xs);display:flex}.cf-row__name{min-width:0;font-size:var(--text-body-sm);color:var(--text-heading);overflow-wrap:anywhere;flex:auto;font-weight:600}.cf-seg{border:1px solid var(--border-hairline);border-radius:var(--radius-pill);flex:none;display:flex;overflow:hidden}.cf-seg__btn{border:0;border-left:1px solid var(--border-hairline);width:38px;font-family:var(--font-display);font-size:var(--text-body-sm);color:var(--text-muted);cursor:pointer;transition:background var(--duration-fast) var(--ease-standard), color var(--duration-fast) var(--ease-standard), box-shadow .25s var(--ease-standard);background:0 0;padding:4px 0;font-weight:600}.cf-seg__btn:first-child{border-left:0}.cf-seg__btn:hover{color:var(--text-heading)}.cf-seg__btn:not(.is-on):hover{background:var(--sage-50)}.cf-seg__btn:focus-visible{outline:2px solid var(--brand-primary);outline-offset:-2px}.cf-seg__btn.is-on{background:linear-gradient(180deg, var(--sage-500), var(--brand-primary));color:#fff;text-shadow:0 0 10px #ebe1cc8c;box-shadow:inset 0 1px #ffffff2e,inset 0 -6px 12px #00000014}.cf-x{width:28px;height:28px;color:var(--text-muted);cursor:pointer;transition:background var(--duration-fast) var(--ease-standard), color var(--duration-fast) var(--ease-standard);background:0 0;border:0;border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:1.1rem;line-height:1;display:inline-flex}.cf-x:hover{background:var(--surface-page);color:var(--text-heading)}.cf-x--sm{width:20px;height:20px;font-size:.95rem}.cf-pill{padding:2px 4px 2px var(--space-3);border:1px solid var(--brand-primary);background:color-mix(in srgb, var(--brand-primary) 10%, transparent);font-size:var(--text-body-sm);color:var(--text-heading);border-radius:999px;align-items:center;gap:2px;font-weight:600;display:inline-flex}.cf-results{margin-top:var(--space-6);padding-top:var(--space-6);border-top:1px solid var(--border-hairline)}.cf-wait{padding:var(--space-6);text-align:center;color:var(--text-muted);border:1px dashed var(--border-hairline);border-radius:12px;margin:0}.cf-summary{margin:0 0 var(--space-4);font-family:var(--font-display);font-size:var(--text-body-lg);color:var(--text-heading);font-weight:600;line-height:1.5}.cf-unlock{gap:var(--space-2);margin-bottom:var(--space-4);flex-direction:column;display:flex}.cf-unlock__label{font-size:var(--text-body-sm);color:var(--text-muted)}.cf-filters{gap:var(--space-3);margin-bottom:var(--space-4);flex-direction:column;display:flex}.cf-filterrow{align-items:baseline;gap:var(--space-2) var(--space-3);flex-wrap:wrap;display:flex}.cf-filterrow .cf-group__label{min-width:64px}.cf-search{border:1px solid var(--border-hairline);background:var(--surface-card);min-width:0;max-width:420px;font:inherit;font-size:var(--text-body-sm);color:var(--text-heading);transition:border-color var(--duration-fast) var(--ease-standard), box-shadow .25s var(--ease-standard);border-radius:999px;flex:220px;padding:7px 14px}.cf-search:hover{border-color:var(--sage-300)}.cf-search:focus{border-color:var(--brand-primary);box-shadow:0 0 0 3px color-mix(in srgb, var(--brand-primary) 18%, transparent);outline:none}.cf-tabs{gap:var(--space-1) var(--space-4);margin-bottom:var(--space-4);border-bottom:1px solid var(--border-hairline);flex-wrap:wrap;display:flex}.cf-tab{padding:var(--space-2) 2px;font-size:var(--text-body-sm);color:var(--text-muted);cursor:pointer;transition:color var(--duration-fast) var(--ease-standard), border-color .25s var(--ease-standard);background:0 0;border:0;border-bottom:2px solid #0000;margin-bottom:-1px;font-weight:600}.cf-tab:hover{color:var(--text-heading)}.cf-tab:not(.is-on):hover{border-bottom-color:var(--sage-200)}.cf-tab:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px;border-radius:4px}.cf-tab.is-on{color:var(--brand-primary);border-bottom-color:var(--brand-primary)}.cf-tab__n{background:var(--surface-page);text-align:center;min-width:1.6em;color:var(--text-muted);transition:background var(--duration-fast) var(--ease-standard), color var(--duration-fast) var(--ease-standard);border-radius:999px;margin-left:2px;padding:0 6px;font-size:.72rem;display:inline-block}.cf-tab.is-on .cf-tab__n{background:color-mix(in srgb, var(--brand-primary) 12%, transparent);color:var(--brand-primary)}.cf-empty{padding:var(--space-6);text-align:center;color:var(--text-muted);border:1px dashed var(--border-hairline);border-radius:12px;margin:0}.cf-list{gap:var(--space-3);grid-template-columns:minmax(0,1fr);margin:0;padding:0;list-style:none;display:grid}@media (min-width:760px){.cf-list{grid-template-columns:repeat(2,minmax(0,1fr))}}.cf-card{gap:var(--space-2);min-width:0;padding:var(--space-4);border:1px solid var(--border-hairline);background:var(--surface-card);border-radius:12px;flex-direction:column;transition:transform .15s,box-shadow .15s;display:flex;position:relative}.cf-card:hover{transform:translateY(-2px);box-shadow:0 10px 28px #0000000f}@media (prefers-reduced-motion:reduce){.cf-card:hover{transform:none}}html[data-pointer=fine] .cf-results .cf-card--near{--spot:#c08a2ae6;--spot-fill:#c08a2a0d}html[data-pointer=fine] .cf-results .cf-card--grade-short{--spot:#b0601fd9;--spot-fill:#b0601f0d}html[data-pointer=fine] .cf-results :is(.cf-card--missing-subject,.cf-card--closed){--spot:#b04a3ccc;--spot-fill:#b04a3c0a}.cf-results{--cf-green:var(--brand-primary);--cf-amber:#c08a2a;--cf-amber-deep:#b0601f;--cf-red:#b04a3c}.cf-card--meets,.cf-card--open{border-color:color-mix(in srgb, var(--cf-green) 38%, var(--border-hairline));border-left:4px solid var(--cf-green);background:color-mix(in srgb, var(--cf-green) 11%, var(--surface-card))}.cf-card--near{border-color:color-mix(in srgb, var(--cf-amber) 42%, var(--border-hairline));border-left:4px solid var(--cf-amber);background:color-mix(in srgb, var(--cf-amber) 13%, var(--surface-card))}.cf-card--grade-short{border-color:color-mix(in srgb, var(--cf-amber-deep) 42%, var(--border-hairline));border-left:4px solid var(--cf-amber-deep);background:color-mix(in srgb, var(--cf-amber-deep) 13%, var(--surface-card))}.cf-card--missing-subject,.cf-card--closed{border-color:color-mix(in srgb, var(--cf-red) 38%, var(--border-hairline));border-left:4px solid var(--cf-red);background:color-mix(in srgb, var(--cf-red) 9%, var(--surface-card))}.cf-card__head{gap:var(--space-2);flex-wrap:wrap;display:flex}.cf-tag{padding:2px var(--space-2);letter-spacing:.01em;border-radius:999px;align-items:center;font-size:.68rem;font-weight:600;display:inline-flex}.cf-tag--school{color:var(--brand-primary);background:color-mix(in srgb, var(--brand-primary) 12%, transparent)}.cf-tag--area{color:var(--text-muted);background:var(--surface-page)}.cf-tag--short{color:var(--gold-700);background:var(--gold-100)}.cf-tag--v{color:#fff}.cf-tag--v-meets,.cf-tag--v-open{background:var(--cf-green)}.cf-tag--v-near{background:var(--cf-amber)}.cf-tag--v-grade-short{background:var(--cf-amber-deep)}.cf-tag--v-missing-subject,.cf-tag--v-closed{background:var(--cf-red)}.cf-tab--meets.is-on,.cf-tab--open.is-on{color:var(--cf-green);border-bottom-color:var(--cf-green)}.cf-tab--near.is-on{color:var(--cf-amber);border-bottom-color:var(--cf-amber)}.cf-tab--grade-short.is-on{color:var(--cf-amber-deep);border-bottom-color:var(--cf-amber-deep)}.cf-tab--missing-subject.is-on,.cf-tab--closed.is-on{color:var(--cf-red);border-bottom-color:var(--cf-red)}.cf-tab--near.is-on .cf-tab__n{background:color-mix(in srgb, var(--cf-amber) 14%, transparent);color:var(--cf-amber)}.cf-tab--grade-short.is-on .cf-tab__n{background:color-mix(in srgb, var(--cf-amber-deep) 14%, transparent);color:var(--cf-amber-deep)}.cf-tab--missing-subject.is-on .cf-tab__n,.cf-tab--closed.is-on .cf-tab__n{background:color-mix(in srgb, var(--cf-red) 12%, transparent);color:var(--cf-red)}.cf-card__name{font-family:var(--font-display);font-weight:600;font-size:var(--text-body-lg);color:var(--text-heading);margin:0;line-height:1.35}.cf-card__variants{color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:4px 6px;margin:0;font-size:.78rem;line-height:1.4;display:flex}.cf-card__variants-label{margin-right:2px;font-weight:600}.cf-card__variants-label:after{content:"："}:lang(en) .cf-card__variants-label:after{content:":"}.cf-variant{background:color-mix(in srgb, var(--text-heading) 7%, transparent);color:var(--text-heading);border-radius:999px;max-width:100%;padding:1px 8px}.cf-card__offer{align-items:baseline;gap:var(--space-2);display:flex}.cf-card__offer-label{text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);font-size:.68rem}.cf-card__offer-grades{font-family:var(--font-display);font-weight:700;font-size:var(--text-body-lg);color:var(--brand-primary);letter-spacing:.02em}.cf-card__why{font-size:var(--text-body-sm);color:var(--text-heading);margin:0;font-weight:600;line-height:1.5}.cf-card__req{font-size:var(--text-body-sm);color:var(--text-muted);margin:0;line-height:1.55}.cf-card__note{color:var(--text-muted);font-size:.78rem}.cf-card__note summary{cursor:pointer;font-weight:600}.cf-card__note p{margin:var(--space-1) 0 0;line-height:1.55}.cf-card__foot{align-items:center;gap:var(--space-2);padding-top:var(--space-2);flex-wrap:wrap;margin-top:auto;display:flex}.cf-test{padding:2px var(--space-2);border:1px solid var(--border-hairline);border-radius:var(--radius-sm);color:var(--text-heading);align-items:center;font-size:.72rem;font-weight:600;display:inline-flex}.cf-test--link{border-color:var(--sage-300);color:var(--brand-primary);text-decoration:none}.cf-test--link:hover{background:var(--sage-50);text-decoration:none}.cf-card__src{color:var(--text-muted);margin-left:auto;font-size:.75rem}.cf-card__src:hover{color:var(--brand-primary)}.cf-cta__actions{justify-content:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.cf-disclaimer{margin:var(--space-6) auto 0;max-width:68ch;color:var(--text-muted);font-size:.75rem;line-height:1.65}.lang-zh .cf-disclaimer{max-width:44em}
