:root{--xuan-black: #1b1b1f;--dai-qing: #2f4056;--dai-qing-light: #42556f;--dai-qing-dark: #22303f;--xuan-paper: #f5f0e6;--paper-deep: #ede6d8;--cinnabar: #b03a2e;--gold: #c9a227;--ink: #2b2b30;--ink-light: #6b6660;--font-serif: "Songti SC", "SimSun", "STSong", "Noto Serif SC", "Source Han Serif SC", Georgia, serif}*{box-sizing:border-box}html,body,#root{margin:0;padding:0;height:100%}body{font-family:var(--font-serif);background:var(--xuan-paper);color:var(--ink);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}.ink-paper{background-color:var(--xuan-paper);background-image:radial-gradient(circle at 20% 10%,rgba(201,162,39,.05) 0,transparent 60%),radial-gradient(circle at 80% 90%,rgba(47,64,86,.05) 0,transparent 55%),url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='180' height='180'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3' stitchTiles='stitch'/><feColorMatrix type='saturate' values='0'/></filter><rect width='180' height='180' filter='url(%23n)' opacity='0.035'/></svg>")}.fret-border{border:1px solid var(--gold);box-shadow:inset 0 0 0 3px #fffdf8,inset 0 0 0 4px #c9a2278c;position:relative}.fret-border:before,.fret-border:after{content:"";position:absolute;width:22px;height:22px;border:2px solid var(--gold);opacity:.75}.fret-border:before{top:6px;left:6px;border-right:0;border-bottom:0}.fret-border:after{bottom:6px;right:6px;border-left:0;border-top:0}.gold-rule{height:1px;border:0;background:linear-gradient(90deg,transparent,var(--gold),transparent);opacity:.7}.public-header{background:linear-gradient(90deg,var(--xuan-black) 0%,var(--dai-qing-dark) 100%);border-bottom:2px solid var(--gold);box-shadow:0 2px 12px #00000047}.public-header .logo{color:#f2e8cf;font-size:20px;font-weight:700;letter-spacing:3px;display:flex;align-items:center;gap:10px}.public-header .nav-item{color:#e9e0c9;opacity:.82;letter-spacing:1px}.public-header .nav-item.active,.public-header .nav-item:hover{opacity:1;color:var(--gold)}.public-header.ant-menu-dark .ant-menu-item-selected{border-bottom:2px solid var(--gold)}.public-header .ant-menu-item:after{border-bottom-color:transparent!important}.public-nav{flex:1 1 auto;min-width:0;display:flex;align-items:center;flex-wrap:wrap;gap:4px 26px;padding:0 12px}.public-nav .nav-item{color:#e9e0c9;opacity:.82;letter-spacing:1px;white-space:nowrap}.public-nav .nav-item.active,.public-nav .nav-item:hover{opacity:1;color:var(--gold)}.public-header .hdr-btn{color:#f2e8cf;border-color:#c9a227a6;background:transparent}.public-header .hdr-btn:hover,.public-header .hdr-btn:focus{color:var(--gold)!important;border-color:var(--gold)!important;background:#c9a2271f!important}@media (max-width: 575px){.public-header{flex-wrap:wrap;height:auto;padding:10px 12px!important;gap:6px 0}.public-header .logo-link{margin-right:0!important}.brand-logo-text{display:none!important}.public-header-actions{order:2;margin-left:auto;gap:6px!important}.public-header .hdr-btn{padding:4px 8px;font-size:13px}.public-header .admin-login-btn>span{display:none}.public-header .admin-login-btn:after{content:"管理员"}.public-nav{flex-basis:100%;order:3;padding-top:4px;gap:4px 2px}.public-nav .nav-item{font-size:13px;padding:6px 10px;white-space:nowrap}}.public-footer{background:linear-gradient(180deg,var(--dai-qing-dark) 0%,var(--xuan-black) 100%);color:#cfc6ad;border-top:2px solid var(--gold)}.public-footer a:hover{color:var(--gold)}.serif-title{font-family:var(--font-serif);color:var(--dai-qing);letter-spacing:2px;font-weight:700}.section-title{display:flex;flex-direction:column;align-items:center;margin-bottom:28px}.section-title .st-main{font-size:28px;font-weight:700;letter-spacing:6px;color:var(--dai-qing);position:relative;padding:0 18px}.section-title .st-main:after{content:"";position:absolute;left:50%;bottom:-10px;transform:translate(-50%);width:56px;height:2px;background:var(--gold)}.section-title .st-sub{margin-top:18px;font-size:13px;letter-spacing:3px;color:var(--ink-light)}.pattern-divider{display:flex;align-items:center;justify-content:center;gap:14px;margin:34px 0}.pattern-divider .pd-line{height:1px;width:92px;background:linear-gradient(90deg,transparent,var(--gold))}.pattern-divider .pd-line.right{background:linear-gradient(90deg,var(--gold),transparent)}.pattern-divider svg{opacity:.8}.text-primary{color:var(--dai-qing)}.text-gold{color:var(--gold)}.text-cinnabar{color:var(--cinnabar)}.bg-primary{background:var(--dai-qing)}.bg-paper{background:var(--xuan-paper)}.bg-ink{background:var(--xuan-black)}.card-hover{transition:all .28s ease}.card-hover:hover{transform:translateY(-4px);box-shadow:0 12px 26px #2f405629;border-color:var(--gold)!important}.direction-card{text-align:center;padding:26px 16px;background:#fffdf8;border:1px solid #e4dcc9;border-radius:4px;cursor:pointer;transition:all .28s ease}.direction-card:hover{border-color:var(--gold);transform:translateY(-4px);box-shadow:0 12px 26px #c9a22729}.direction-card .dc-icon{width:56px;height:56px;margin:0 auto 14px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--xuan-paper);border:1px solid var(--gold);color:var(--dai-qing)}.direction-card .dc-name{font-size:17px;font-weight:700;letter-spacing:2px;color:var(--dai-qing)}.direction-card .dc-desc{margin-top:8px;font-size:12px;color:var(--ink-light);line-height:1.7}.teacher-card{background:#fffdf8;border:1px solid #e4dcc9;border-radius:4px;overflow:hidden;transition:all .28s ease}.teacher-card:hover{border-color:var(--gold);box-shadow:0 12px 26px #2f405624}.teacher-card .tc-photo{height:210px;background:var(--xuan-paper);overflow:hidden}.teacher-card .tc-photo img{width:100%;height:100%;object-fit:cover;display:block}.cinnabar-seal{display:inline-flex;align-items:center;justify-content:center;border:2px solid var(--cinnabar);color:var(--cinnabar);font-weight:700;letter-spacing:2px;border-radius:3px;background:#b03a2e0f;padding:6px 10px;line-height:1.25}.ql-editor{min-height:220px}.rich-content img{max-width:100%}.rich-content p{line-height:1.9}@media print{.no-print{display:none!important}@page{size:A4 landscape;margin:10mm}.cert-page{box-shadow:none!important}}.cert-page{width:297mm;min-height:200mm;background:linear-gradient(180deg,#fffdf6 0%,var(--xuan-paper) 55%,#f3ecdd 100%);padding:14mm 16mm;position:relative;margin:0 auto;overflow:hidden}.cert-frame{position:absolute;top:8mm;right:8mm;bottom:8mm;left:8mm;border:2px solid var(--gold);box-shadow:inset 0 0 0 4px #fffdf6,inset 0 0 0 5px #c9a22780;pointer-events:none}.cert-frame:before,.cert-frame:after{content:"";position:absolute;width:34px;height:34px;border:3px solid var(--gold);opacity:.8}.cert-frame:before{top:8px;left:8px;border-right:0;border-bottom:0}.cert-frame:after{bottom:8px;right:8px;border-left:0;border-top:0}.cert-head .cert-title{font-family:var(--font-serif);font-size:40px;font-weight:700;letter-spacing:14px;color:var(--gold);text-shadow:0 1px 0 #fff8e2,0 2px 6px rgba(201,162,39,.35)}.cert-head .cert-title-en{font-size:11px;letter-spacing:3px;color:var(--ink-light);margin-top:8px}.cert-head .cert-institute{font-size:15px;color:var(--dai-qing);letter-spacing:4px;margin-top:10px}.cert-label{color:var(--ink-light);letter-spacing:2px}.cert-value{border-bottom:1px solid rgba(47,64,86,.35);color:var(--ink)}.cert-value.strong{color:var(--dai-qing);font-weight:700}.cert-value.level{color:var(--cinnabar);font-weight:700}.cert-no{font-family:Courier New,monospace;letter-spacing:1px}.seal-corner{position:absolute;right:14mm;top:14mm;width:74px;height:74px;border:2px solid var(--cinnabar);border-radius:4px;color:var(--cinnabar);display:flex;align-items:center;justify-content:center;font-size:15px;font-weight:700;letter-spacing:2px;line-height:1.2;transform:rotate(-6deg);opacity:.9;text-align:center;background:#b03a2e0d}.seal-issue{width:92px;height:92px;border:2px solid var(--cinnabar);border-radius:50%;color:var(--cinnabar);display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;text-align:center;line-height:1.3;transform:rotate(-8deg);opacity:.88;background:#b03a2e0d}.qnav-cell{width:38px;height:38px;display:flex;align-items:center;justify-content:center;border:1px solid #d9cfb8;border-radius:3px;cursor:pointer;font-size:14px;background:#fffdf8;color:var(--ink)}.qnav-cell.answered{background:var(--dai-qing);color:#fff;border-color:var(--dai-qing)}.qnav-cell.marked{background:var(--gold);color:#241f0d;border-color:var(--gold)}.ink-login-bg{min-height:100vh;position:relative;background:radial-gradient(ellipse at 50% 30%,rgba(201,162,39,.1) 0,transparent 62%),linear-gradient(160deg,var(--xuan-black) 0%,var(--dai-qing-dark) 45%,var(--dai-qing) 100%);display:flex;align-items:center;justify-content:center;overflow:hidden}.ink-login-bg:before{content:"";position:absolute;left:0;right:0;bottom:0;height:42%;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 300' preserveAspectRatio='none'><path d='M0,300 L0,190 C120,150 190,215 300,180 C410,145 470,205 600,165 C730,125 800,200 920,170 C1040,140 1120,195 1200,175 L1200,300 Z' fill='rgba(27,27,31,0.55)'/><path d='M0,300 L0,235 C150,205 240,255 380,225 C520,195 600,250 740,220 C880,190 980,248 1200,215 L1200,300 Z' fill='rgba(27,27,31,0.72)'/></svg>");background-size:cover;background-position:bottom;opacity:.9}.ink-login-bg:after{content:"";position:absolute;right:-60px;top:-60px;width:420px;height:420px;opacity:.12;background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 200'><circle cx='100' cy='100' r='92' fill='none' stroke='%23C9A227' stroke-width='2'/><g stroke='%23C9A227' stroke-width='5' fill='none'><line x1='100' y1='16' x2='100' y2='44'/><line x1='100' y1='16' x2='100' y2='30' stroke-dasharray='0'/><line x1='100' y1='184' x2='100' y2='156'/><line x1='16' y1='100' x2='44' y2='100'/><line x1='184' y1='100' x2='156' y2='100'/></g><circle cx='100' cy='100' r='60' fill='none' stroke='%23C9A227' stroke-width='1.5'/></svg>");background-size:contain;background-repeat:no-repeat}.login-card{position:relative;z-index:2;width:92%;max-width:420px;background:#fdfbf5f7;border:1px solid var(--gold);border-radius:4px;box-shadow:0 18px 48px #00000073;padding:30px 32px 24px}.login-card .lc-title{text-align:center;color:var(--dai-qing)}.login-card .lc-title .lc-main{font-size:22px;font-weight:700;letter-spacing:4px}.login-card .lc-title .lc-sub{font-size:10px;letter-spacing:1.5px;color:var(--ink-light);margin-top:6px}.login-card .lc-motto{text-align:center;color:var(--gold);letter-spacing:3px;font-size:13px;margin:14px 0 20px}
