/*
 * 生源查询、高校信息与企业工作台的共享视觉层。
 * 只在带有 public-data-page 的页面生效，避免影响登录、支付和后台页面。
 */
.public-data-page {
    --suite-brand-50: #f3f9fd;
    --suite-brand-100: #e4f1fb;
    --suite-brand-500: #3498db;
    --suite-brand-600: #3498db;
    --suite-brand-700: #2980b9;
    --suite-indigo: #6f8fe8;
    --suite-indigo-dark: #5b78d0;
    --suite-external: #1abc9c;
    --suite-external-hover: #16a085;
    --suite-ink: #26384c;
    --suite-text: #52677a;
    --suite-muted: #66788a;
    --suite-line: #e1e9f0;
    --suite-page: #f5f7fa;
    --suite-shadow: 0 8px 24px rgba(39, 75, 105, .08);
    background: var(--suite-page);
    color: var(--suite-ink);
}

/* 三页的内容卡片使用同一套边界和阴影，导航及账号组件保持原有全站规则。 */
.graduates-page :is(.carousel-container, .filter-container, .table-container),
.universities-page :is(.carousel-container, .filter-container, .table-container, .department-content),
.workbench-page :is(.vipbar, .tool, .note) {
    border: 1px solid var(--suite-line);
    box-shadow: var(--suite-shadow);
}

.graduates-page .main-container :is(a, button, input, select):focus-visible,
.universities-page .main-container :is(a, button, input, select):focus-visible,
.universities-page .department-panel :is(a, button):focus-visible,
.workbench-page .wrap :is(a, button):focus-visible {
    outline: 3px solid rgba(52, 152, 219, .24);
    outline-offset: 3px;
}

/* 生源查询：把唯一的大面积绿色操作收回品牌蓝。 */
.graduates-page .conversion-strip {
    border-color: rgba(52, 152, 219, .22);
    background: linear-gradient(110deg, #fbfdff 0%, var(--suite-brand-50) 58%, #eef7fd 100%);
    box-shadow: 0 8px 24px rgba(39, 115, 163, .08);
}

.graduates-page .conversion-strip-copy {
    display: flex;
    min-width: 0;
    align-items: center;
    gap: 13px;
}

.graduates-page .conversion-strip-icon {
    display: inline-flex;
    width: 40px;
    height: 40px;
    flex: 0 0 40px;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(52, 152, 219, .17);
    border-radius: 12px;
    background: linear-gradient(145deg, rgba(255, 255, 255, .98), rgba(228, 241, 251, .92));
    color: var(--suite-brand-500);
    box-shadow:
        0 6px 16px rgba(52, 152, 219, .10),
        inset 0 1px 0 rgba(255, 255, 255, .88);
}

.graduates-page .conversion-strip-icon svg {
    width: 21px;
    height: 21px;
}

.graduates-page .conversion-strip-text {
    min-width: 0;
}

.graduates-page .conversion-strip strong {
    display: block;
    margin: 0 0 3px;
    color: var(--suite-ink);
}

.graduates-page .conversion-strip-text > span {
    display: block;
    color: var(--suite-muted);
}

.graduates-page .conversion-strip a {
    background: linear-gradient(135deg, #5ab3e6 0%, var(--suite-brand-500) 54%, #318fd0 100%);
    border: 1px solid rgba(255, 255, 255, .28);
    box-shadow:
        0 10px 22px rgba(52, 152, 219, .24),
        inset 0 1px 0 rgba(255, 255, 255, .34);
    text-shadow: 0 1px 1px rgba(22, 88, 135, .16);
}

.graduates-page .conversion-strip a:hover {
    background: linear-gradient(135deg, #50aae0 0%, #318fd0 56%, #2c83c2 100%);
    box-shadow:
        0 14px 28px rgba(52, 152, 219, .30),
        inset 0 1px 0 rgba(255, 255, 255, .28);
}

.graduates-page .btn-primary,
.universities-page .btn-primary {
    background: var(--suite-brand-600);
    border-color: var(--suite-brand-600);
}

.graduates-page .btn-primary:hover,
.universities-page .btn-primary:hover {
    background: var(--suite-brand-700);
    border-color: var(--suite-brand-700);
}

.graduates-page .tech-glow:nth-child(2),
.universities-page .tech-glow:nth-child(2) {
    background: rgba(52, 152, 219, .11);
}

.graduates-page .tech-glow:nth-child(3),
.universities-page .tech-glow:nth-child(3) {
    background: rgba(91, 124, 250, .09);
}

/* 高校信息：外链、预览、进入对接分别对应次要、轻量、主要操作。 */
.universities-page .link-button,
.universities-page .detail-link,
.universities-page .contact-center-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 34px;
    padding: 0 12px;
    border-radius: 8px;
    border: 1px solid transparent;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.2;
    text-decoration: none;
    white-space: nowrap;
}

.universities-page .link-button {
    color: #fff;
    background: var(--suite-external);
    border-color: var(--suite-external);
    box-shadow: 0 8px 18px rgba(26, 188, 156, .18), inset 0 1px 0 rgba(255, 255, 255, .24);
}

.universities-page .link-button:hover {
    color: #fff;
    background: var(--suite-external-hover);
    border-color: var(--suite-external-hover);
    box-shadow: 0 10px 22px rgba(22, 160, 133, .23), inset 0 1px 0 rgba(255, 255, 255, .2);
}

.universities-page .detail-link {
    color: var(--suite-brand-600);
    background: var(--suite-brand-100);
}

.universities-page .detail-link:hover {
    color: var(--suite-brand-700);
    background: #d8ebf9;
}

.universities-page .contact-center-link {
    color: #fff;
    background: var(--suite-brand-600);
    box-shadow: none;
}

.universities-page .contact-center-link:hover {
    color: #fff;
    background: var(--suite-brand-700);
    box-shadow: 0 3px 8px rgba(0, 0, 0, .16);
}

.universities-page #closeDeptBtn {
    color: var(--suite-brand-600);
    background: #fff;
    border: 1px solid rgba(52, 152, 219, .32);
    box-shadow: none;
}

.universities-page #closeDeptBtn:hover {
    color: var(--suite-brand-700);
    background: var(--suite-brand-50);
    border-color: var(--suite-brand-500);
    box-shadow: 0 7px 16px rgba(39, 75, 105, .09);
}

.universities-page #closeDeptBtn svg {
    fill: currentColor;
}

/* 企业工作台：品牌蓝到靛蓝，避免把非状态信息误读成“成功/已完成”。 */
.workbench-page .top {
    background: linear-gradient(135deg, #5dade2 0%, var(--suite-brand-500) 56%, #4f86d6 100%);
    box-shadow: 0 10px 28px rgba(52, 152, 219, .16);
}

.workbench-page .scale .s {
    border: 1px solid rgba(255, 255, 255, .13);
}

.workbench-page .mini-icon.data::before {
    box-shadow: 7px -5px 0 var(--suite-indigo), 14px -1px 0 #8ab7ff;
}

.workbench-page .tool {
    border-color: var(--suite-line);
}

.workbench-page a.tool:hover {
    transform: translateY(-3px);
    border-color: rgba(52, 152, 219, .48);
    box-shadow: 0 14px 30px rgba(39, 75, 105, .13);
}

.workbench-page .tool-disabled,
.workbench-page .tool-disabled:hover {
    transform: none;
    border-color: var(--suite-line);
    box-shadow: var(--suite-shadow);
}

.workbench-page .tool-disabled .tool-icon {
    filter: saturate(.58);
    opacity: .88;
}

.workbench-page .icon-intel .b2 {
    background: linear-gradient(180deg, #8ea5ff, var(--suite-indigo));
}

.workbench-page .icon-talent {
    background: linear-gradient(145deg, #f5f9ff, #e2edff);
}

.workbench-page .icon-talent .map {
    background: linear-gradient(145deg, #fff, #e7efff);
    box-shadow: inset 0 1px 0 #fff, 0 5px 12px rgba(69, 104, 204, .16);
}

.workbench-page .icon-talent .map::before {
    background: linear-gradient(145deg, #7c9fff, var(--suite-indigo-dark));
}

.workbench-page .icon-talent .gridline {
    background: rgba(69, 104, 204, .35);
    box-shadow: 0 -13px 0 rgba(69, 104, 204, .17);
}

.workbench-page .icon-route .p1 {
    background: linear-gradient(145deg, #8ea5ff, var(--suite-indigo));
}

.workbench-page .icon-fair .calendar::after {
    box-shadow: 11px 0 0 var(--suite-indigo), 22px 0 0 rgba(52, 152, 219, .32), 0 11px 0 rgba(230, 126, 34, .3), 11px 11px 0 #8ab7ff;
}

.workbench-page .icon-publish .screen::before {
    box-shadow: 0 8px 0 rgba(52, 152, 219, .22), 0 16px 0 rgba(91, 124, 250, .25);
}

.workbench-page .icon-publish .screen::after {
    background: linear-gradient(180deg, #8ea5ff, var(--suite-indigo));
}

.workbench-page .icon-resume .paper::before {
    background: conic-gradient(from 210deg, #3498db 0 38%, var(--suite-indigo) 38% 68%, #dfefff 68% 100%);
}

.workbench-page .corner.c1,
.workbench-page .corner.c4,
.workbench-page .corner.c5 {
    color: var(--suite-brand-600);
    background: rgba(52, 152, 219, .11);
}

.workbench-page .corner.c2,
.workbench-page .corner.c3 {
    color: var(--suite-indigo-dark);
    background: rgba(91, 124, 250, .11);
}

.workbench-page .corner.c6 {
    color: #a96712;
    background: rgba(230, 157, 42, .14);
}

.workbench-page .corner.c7,
.workbench-page .corner.c8 {
    color: #687887;
    background: #eef2f5;
}

@media (prefers-reduced-motion: reduce) {
    .public-data-page *,
    .public-data-page *::before,
    .public-data-page *::after {
        scroll-behavior: auto !important;
        transition-duration: .01ms !important;
        animation-duration: .01ms !important;
        animation-iteration-count: 1 !important;
    }
}
