.toast.show{animation:toastIn .25s ease}@keyframes toastIn{0%{transform:translate(-50%,8px);opacity:0}to{transform:translate(-50%);opacity:1}}// 直接引用复用的全局样式（与原生版一致，保证页面架构与视觉不变） import "/styles.css"; import "/collaboration.css"; :root{--paper: #f6f2e9;--surface: #fdfbf5;--ink: #2c3e35;--ink-soft: #7a8a80;--line: #d8dccf;--navy: #1f4d31;--navy-2: #163a24;--teal: #2d6a4f;--teal-soft: #e6efe7;--gold: #b8894a;--coral: #a83232;--shadow: 0 10px 30px rgba(31, 77, 49, .08);--radius: 14px;font-family:"Noto Serif SC","Source Han Serif SC",Songti SC,STSong,SimSun,serif}body{background:var(--paper);background-image:radial-gradient(ellipse at 20% 0%,rgba(184,137,74,.05),transparent 50%),radial-gradient(ellipse at 80% 100%,rgba(45,106,79,.06),transparent 50%)}.side{background:linear-gradient(180deg,#1f4d31,#163a24);border-right:1px solid rgba(255,255,255,.06)}.brand-logo{filter:drop-shadow(0 2px 8px rgba(0,0,0,.2))}.brand h1{font-family:STXingkai,华文行楷,"Noto Serif SC",serif;letter-spacing:.08em}.nav-label{color:#8fb3a0;letter-spacing:.25em}.nav-btn{font-family:"Noto Serif SC",Songti SC,serif}.nav-btn.active{background:#fdfbf5f2;color:var(--navy);box-shadow:0 4px 14px #00000026}.account-card{background:#ffffff0f;border:1px solid rgba(255,255,255,.12)}.topbar{background:#f6f2e9e0;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}.top-title h2{font-family:"Noto Serif SC",Songti SC,serif;font-weight:600;letter-spacing:.04em}.top-title .eyebrow{color:var(--gold);letter-spacing:.2em}.card,.panel,.box,.stat-card,.announce-item{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.btn-primary,button.primary,.button.primary{background:linear-gradient(135deg,#2d6a4f,#1f4d31);border:none;border-radius:10px;font-family:"Noto Serif SC",Songti SC,serif;letter-spacing:.08em;box-shadow:0 4px 12px #1f4d3133}.btn-primary:hover,button.primary:hover{transform:translateY(-1px);box-shadow:0 6px 16px #1f4d3147}.campus-skyline{opacity:.35}.footer-meta{color:var(--ink-soft);font-family:"Noto Serif SC",serif;letter-spacing:.1em}h1,h2,h3,.section-title,.page-title{font-family:"Noto Serif SC","Source Han Serif SC",Songti SC,serif}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#2d6a4f40;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#2d6a4f73}.auth-page{background:var(--paper)}.auth-layout{gap:48px}.auth-intro{padding:48px}.auth-platform-title{font-family:STXingkai,华文行楷,serif;font-size:42px;letter-spacing:.12em;color:var(--navy);line-height:1.3}.auth-platform-title span{font-size:16px;letter-spacing:.2em;color:var(--ink-soft);display:block;margin-top:10px;font-family:"Noto Serif SC",serif}.auth-message p{color:var(--ink-soft);font-family:"Noto Serif SC",serif;line-height:1.9}.auth-card{background:var(--surface);border:1px solid var(--line);border-radius:20px;box-shadow:0 20px 50px #1f4d311a;padding:40px}.auth-card-heading .section-kicker{color:var(--gold);letter-spacing:.25em;font-size:11px}.auth-card-heading h2{font-family:"Noto Serif SC",serif;letter-spacing:.05em}.auth-submit{width:100%;padding:14px;font-size:15px;letter-spacing:.3em;background:linear-gradient(135deg,#2d6a4f,#1f4d31)}.auth-meta{color:var(--ink-soft);font-size:11px;letter-spacing:.15em;text-align:center;margin-top:20px}form label{font-family:"Noto Serif SC",serif;color:var(--ink);font-size:13px;letter-spacing:.05em}input,select,textarea{border:1px solid var(--line)!important;border-radius:10px!important;background:#fff!important;padding:10px 14px!important;font-family:"Noto Serif SC",serif!important;transition:border-color .2s,box-shadow .2s}input:focus,select:focus,textarea:focus{border-color:var(--teal)!important;box-shadow:0 0 0 3px #2d6a4f1f!important;outline:none}table{width:100%;border-collapse:separate;border-spacing:0;font-family:"Noto Serif SC",serif}thead th{background:var(--teal-soft)!important;color:var(--navy)!important;font-weight:600!important;letter-spacing:.05em;border-bottom:2px solid var(--line)!important;padding:12px!important;text-align:left}tbody td{padding:11px 12px!important;border-bottom:1px solid var(--line)!important}tbody tr:hover{background:#2d6a4f0a}.badge,.tag,.chip{font-family:"Noto Serif SC",serif;border-radius:6px;letter-spacing:.05em}.stat-card,.dash-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:22px;box-shadow:var(--shadow);transition:transform .2s,box-shadow .2s}.stat-card:hover,.dash-card:hover{transform:translateY(-2px);box-shadow:0 14px 36px #1f4d311f}.stat-card h3,.dash-card h3{font-family:"Noto Serif SC",serif;color:var(--navy);letter-spacing:.04em}.announce-item,.msg-item,.notice{border-left:3px solid var(--teal);padding-left:16px}button{font-family:"Noto Serif SC",serif;letter-spacing:.03em}.view-card,.panel-card,.info-card,.form-card,.list-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.chat-bubble,.message,.ai-message,.user-message{font-family:"Noto Serif SC",serif;border-radius:16px;line-height:1.8}.chat-bubble.user,.user-message{background:linear-gradient(135deg,#2d6a4f,#1f4d31);color:#fdfbf5}.chat-bubble.ai,.ai-message{background:var(--teal-soft);color:var(--ink)}.modal,.dialog,.popup,.overlay-panel{background:var(--surface)!important;border:1px solid var(--line)!important;border-radius:18px!important;box-shadow:0 24px 60px #1f4d3126!important}.badge.success,.tag.success,.status-ok,.status-done{background:#e6efe7;color:#1f4d31}.badge.warning,.tag.warning,.status-pending{background:#fdf3e0;color:#b8894a}.badge.error,.tag.error,.status-fail,.status-absent{background:#f9e4e4;color:#a83232}.badge.info,.tag.info{background:#e3edf3;color:#3d7190}.timeline-item,.step,.progress-item{border-left:2px solid var(--teal);padding-left:18px}.empty,.empty-state,.no-data{color:var(--ink-soft);font-family:"Noto Serif SC",serif;letter-spacing:.1em}.dropdown,.menu,.select-options{background:var(--surface);border:1px solid var(--line);border-radius:10px;box-shadow:0 8px 24px #1f4d311a}.dropdown-item:hover,.menu-item:hover{background:var(--teal-soft)}hr,.divider{border:none;border-top:1px solid var(--line)}.pill,.chip,.filter-btn{border-radius:20px;padding:5px 14px;font-family:"Noto Serif SC",serif}.pill.active,.chip.active,.filter-btn.active{background:var(--navy);color:#fff}a{color:var(--teal);text-decoration:none}a:hover{color:var(--navy);text-decoration:underline}.stat-number,.big-number,.metric-value{font-family:"Noto Serif SC",serif;color:var(--navy);font-weight:700}.ai-brand,.ai-header{font-family:STXingkai,华文行楷,serif;color:var(--navy)}.upload-box,.dropzone{border:2px dashed var(--line);border-radius:14px;background:var(--teal-soft);font-family:"Noto Serif SC",serif;color:var(--ink-soft)}.upload-box:hover,.dropzone:hover{border-color:var(--teal);background:#dcebe2}.slot,.time-slot,.shift-cell{border-radius:8px;font-family:"Noto Serif SC",serif}.slot.filled{background:var(--teal-soft);color:var(--navy)}.slot.empty{background:#f0ece0;color:var(--ink-soft)}.site-footer{border-top:1px solid var(--line);padding-top:16px}.mobile-menu{color:var(--navy)}.ai-mascot,.ai-message-avatar{display:inline-grid;place-items:center;width:24px;height:24px;border-radius:50%;background:linear-gradient(135deg,#2d6a4f,#1f4d31);color:#fdfbf5;font-family:STXingkai,华文行楷,serif;font-size:14px;vertical-align:middle;margin-right:6px}
