body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}*{box-sizing:border-box;margin:0;padding:0}body{background-color:#f5f5f5;color:#333;font-family:Microsoft YaHei,微软雅黑,Arial,sans-serif;line-height:1.6}.App{display:flex;flex-direction:column;min-height:100vh}.main-content{background-color:#f5f5f5;flex:1 1}.btn{border-radius:4px}.btn-secondary:hover{background-color:#545b62}.btn-danger:hover{background-color:#c0392b}.btn-sm{font-size:12px;padding:5px 10px}.btn-large{font-size:16px;padding:15px 30px}.card{border-radius:6px;box-shadow:0 2px 4px #0000001a;margin-bottom:20px}.card-header{background-color:#fafafa;border-bottom:1px solid #eee;padding:15px 20px}.card-body{padding:20px}.card-footer{background-color:#fafafa;border-top:1px solid #eee;padding:15px 20px}.table{margin-bottom:20px}.table td,.table th{border-bottom:1px solid #eee;padding:12px 15px;text-align:left}.table th{color:#333}.table th,.table tr:hover{background-color:#f8f9fa}.category-badge{border-radius:3px;font-weight:500;padding:3px 10px}.category-badge.招标公告{background-color:#e3f2fd;color:#1976d2}.category-badge.澄清公告{background-color:#fff3e0;color:#f57c00}.category-badge.中标公示{background-color:#e8f5e9;color:#388e3c}.category-badge.采购意向公开{background-color:#f3e5f5;color:#7b1fa2}.category-badge.政策法规{background-color:#ffebee;color:#d32f2f}.status-badge{border-radius:3px;font-weight:500;padding:3px 10px}.status-badge.published{background-color:#e8f5e9;color:#388e3c}.status-badge.draft{background-color:#fff3e0;color:#f57c00}.status-badge.archived{background-color:#f5f5f5;color:#757575}.loading{padding:40px}.loading-spinner{margin-right:15px}.error-message{background-color:#ffebee;border-left:4px solid #c62828;border-radius:4px;color:#c62828}.success-message{background-color:#e8f5e9;border-left:4px solid #2e7d32;border-radius:4px;color:#2e7d32}@media (max-width:768px){.container{padding:0 15px}.table{font-size:14px}.table td,.table th{padding:10px}}@media (max-width:480px){.container{padding:0 10px}.btn{font-size:13px;padding:8px 15px}.card-body,.card-footer,.card-header{padding:15px}}:root{--primary-50:#e8f8fc;--primary-100:#d1eff8;--primary-200:#a3dff1;--primary-300:#75cfea;--primary-400:#47bfe3;--primary-500:#2babcf;--primary-600:#1e8aa8;--primary-700:#166a80;--primary-800:#0f4a58;--primary-900:#072a30;--primary-color:#2babcf;--primary-dark:#1e8aa8;--primary-light:#47bfe3;--primary-gradient:linear-gradient(135deg,#2babcf,#1e8aa8);--primary-gradient-soft:linear-gradient(135deg,#e8f8fc,#d1eff8);--gray-50:#fafbfc;--gray-100:#f5f7fa;--gray-200:#e8ecf1;--gray-300:#d1d8e0;--gray-400:#9aa5b1;--gray-500:#6b7785;--gray-600:#4a5568;--gray-700:#2d3748;--gray-800:#1a202c;--gray-900:#0d1117;--success:#10b981;--success-light:#d1fae5;--warning:#f59e0b;--warning-light:#fef3c7;--error:#ef4444;--error-light:#fee2e2;--info:#3b82f6;--info-light:#dbeafe;--text-primary:#1a202c;--text-secondary:#4a5568;--text-tertiary:#6b7785;--text-muted:#9aa5b1;--text-white:#fff;--text-inverse:#fff;--bg-primary:#fff;--bg-secondary:#f5f7fa;--bg-tertiary:#e8ecf1;--bg-dark:#0d1117;--bg-elevated:#fff;--border-light:#e8ecf1;--border-medium:#d1d8e0;--border-dark:#9aa5b1;--shadow-xs:0 1px 2px #0000000a;--shadow-sm:0 2px 4px #0000000f;--shadow-md:0 4px 12px #00000014;--shadow-lg:0 8px 24px #0000001a;--shadow-xl:0 12px 40px #0000001f;--shadow-primary:0 4px 20px #2babcf40;--space-xs:4px;--space-sm:8px;--space-md:16px;--space-lg:24px;--space-xl:32px;--space-2xl:48px;--space-3xl:64px;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--radius-2xl:24px;--radius-full:9999px;--transition-fast:150ms cubic-bezier(0.4,0,0.2,1);--transition-normal:250ms cubic-bezier(0.4,0,0.2,1);--transition-slow:350ms cubic-bezier(0.4,0,0.2,1)}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;scroll-behavior:smooth}body{background-color:#f5f7fa;background-color:var(--bg-secondary);color:#1a202c;color:var(--text-primary);font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Hiragino Sans GB,Microsoft YaHei,微软雅黑,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:15px;line-height:1.7;overflow-x:hidden}.container{padding:0 24px;padding:0 var(--space-lg)}.container-narrow{max-width:960px}.container-narrow,.container-wide{margin:0 auto;padding:0 24px;padding:0 var(--space-lg)}.container-wide{max-width:1400px}.btn{border-radius:12px;border-radius:var(--radius-lg);font-size:15px;gap:var(--space-sm);line-height:1.5;padding:12px 28px;transition:all .25s cubic-bezier(.4,0,.2,1);transition:all var(--transition-normal);-webkit-user-select:none;user-select:none;white-space:nowrap}.btn:focus{box-shadow:0 0 0 4px #2babcf26;outline:none}.btn:disabled{opacity:.5}.btn-primary{background:linear-gradient(135deg,#2babcf,#1e8aa8);background:var(--primary-gradient);box-shadow:0 4px 20px #2babcf40;box-shadow:var(--shadow-primary);color:var(--text-white)}.btn-primary:hover:not(:disabled){box-shadow:0 8px 30px #2babcf59}.btn-primary:active:not(:disabled){transform:translateY(0)}.btn-secondary{background:var(--bg-primary);border-color:#d1d8e0;border-color:var(--border-medium);box-shadow:0 1px 2px #0000000a;box-shadow:var(--shadow-xs);color:#1a202c;color:var(--text-primary)}.btn-secondary:hover:not(:disabled){background:#e8f8fc;background:var(--primary-50);box-shadow:0 2px 4px #0000000f;box-shadow:var(--shadow-sm);color:#2babcf}.btn-outline,.btn-secondary:hover:not(:disabled){border-color:#2babcf;border-color:var(--primary-color);color:var(--primary-color)}.btn-outline{background:#0000}.btn-outline:hover:not(:disabled){background:#2babcf;background:var(--primary-color);box-shadow:0 4px 20px #2babcf40;box-shadow:var(--shadow-primary);color:#fff;color:var(--text-white);transform:translateY(-2px)}.btn-ghost{background:#0000;border-color:#0000;color:#1a202c;color:var(--text-primary)}.btn-ghost:hover:not(:disabled){background:#e8ecf1;background:var(--bg-tertiary);color:#2babcf;color:var(--primary-color)}.btn-danger{background:#ef4444;background:var(--error);border-color:#ef4444;border-color:var(--error);color:var(--text-white)}.btn-danger:hover:not(:disabled){background:#dc2626;border-color:#dc2626;box-shadow:0 4px 16px #ef44444d}.btn-sm{border-radius:8px;border-radius:var(--radius-md);font-size:14px;padding:8px 18px}.btn-lg{padding:16px 36px}.btn-lg,.card{border-radius:16px;border-radius:var(--radius-xl)}.card{background:#fff;background:var(--bg-primary);border:1px solid #e8ecf1;border:1px solid var(--border-light);box-shadow:0 2px 4px #0000000f;box-shadow:var(--shadow-sm);overflow:hidden;transition:all .25s cubic-bezier(.4,0,.2,1);transition:all var(--transition-normal)}.card:hover{border-color:#a3dff1;border-color:var(--primary-200);box-shadow:0 8px 24px #0000001a;box-shadow:var(--shadow-lg);transform:translateY(-4px)}.card-header{background:#fafbfc;background:var(--gray-50);border-bottom:1px solid #e8ecf1;border-bottom:1px solid var(--border-light)}.card-body,.card-footer,.card-header{padding:24px;padding:var(--space-lg)}.card-footer{background:#fafbfc;background:var(--gray-50);border-top:1px solid #e8ecf1;border-top:1px solid var(--border-light)}.form-group{margin-bottom:24px;margin-bottom:var(--space-lg)}.form-label{color:#1a202c;letter-spacing:.2px;margin-bottom:var(--space-sm)}.form-label.required:after{color:#ef4444;color:var(--error);font-weight:700}.form-control,.form-input,.form-select,.form-textarea{background:#fff;background:var(--bg-primary);border:2px solid #e8ecf1;border:2px solid var(--border-light);border-radius:12px;border-radius:var(--radius-lg);color:#1a202c;color:var(--text-primary);font-family:inherit;font-size:15px;line-height:1.6;padding:12px 16px;transition:all .15s cubic-bezier(.4,0,.2,1);transition:all var(--transition-fast);width:100%}.form-control:focus,.form-input:focus,.form-select:focus,.form-textarea:focus{background:#fff;background:var(--bg-primary);border-color:#2babcf;border-color:var(--primary-color);box-shadow:0 0 0 4px #2babcf1a;outline:none}.form-control::placeholder,.form-input::placeholder,.form-textarea::placeholder{color:#9aa5b1;color:var(--text-muted)}.form-textarea{min-height:150px}.form-select{appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath fill='%234a5568' d='M8 11 3 6h10z'/%3E%3C/svg%3E");background-position:right 16px center;background-repeat:no-repeat;cursor:pointer;padding-right:48px}.form-help{color:#6b7785;color:var(--text-tertiary);font-size:13px;line-height:1.6;margin-top:8px;margin-top:var(--space-sm)}.page-hero{background:linear-gradient(135deg,#2babcf,#1e8aa8);background:var(--primary-gradient);color:#fff;color:var(--text-white);overflow:hidden;padding:100px 0;position:relative;text-align:center}.page-hero:before{background:radial-gradient(circle at 20% 80%,#ffffff1a 0,#0000 50%),radial-gradient(circle at 80% 20%,#ffffff14 0,#0000 50%);bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0}.page-hero .container{position:relative;z-index:1}.page-hero-title{font-size:48px;font-weight:800;letter-spacing:2px;line-height:1.2;margin-bottom:16px;margin-bottom:var(--space-md)}.page-hero-subtitle{font-size:18px;font-weight:400;line-height:1.7;margin:0 auto;max-width:600px;opacity:.95}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.font-normal{font-weight:400}.font-medium{font-weight:500}.font-semibold{font-weight:600}.font-bold{font-weight:700}.text-primary{color:#2babcf;color:var(--primary-color)}.text-secondary{color:#4a5568;color:var(--text-secondary)}.text-muted{color:#9aa5b1;color:var(--text-muted)}.text-white{color:#fff;color:var(--text-white)}.bg-primary{background:#fff;background:var(--bg-primary)}.bg-secondary{background:#f5f7fa;background:var(--bg-secondary)}.bg-tertiary{background:#e8ecf1;background:var(--bg-tertiary)}.mt-0{margin-top:0}.mt-1{margin-top:8px;margin-top:var(--space-sm)}.mt-2{margin-top:16px;margin-top:var(--space-md)}.mt-3{margin-top:24px;margin-top:var(--space-lg)}.mt-4{margin-top:32px;margin-top:var(--space-xl)}.mt-5{margin-top:48px;margin-top:var(--space-2xl)}.mb-0{margin-bottom:0}.mb-1{margin-bottom:8px;margin-bottom:var(--space-sm)}.mb-2{margin-bottom:16px;margin-bottom:var(--space-md)}.mb-3{margin-bottom:24px;margin-bottom:var(--space-lg)}.mb-4{margin-bottom:32px;margin-bottom:var(--space-xl)}.mb-5{margin-bottom:48px;margin-bottom:var(--space-2xl)}.py-1{padding-bottom:8px;padding-bottom:var(--space-sm);padding-top:8px;padding-top:var(--space-sm)}.py-2{padding-bottom:16px;padding-bottom:var(--space-md);padding-top:16px;padding-top:var(--space-md)}.py-3{padding-bottom:24px;padding-bottom:var(--space-lg);padding-top:24px;padding-top:var(--space-lg)}.py-4{padding-bottom:32px;padding-bottom:var(--space-xl);padding-top:32px;padding-top:var(--space-xl)}.py-5{padding-bottom:48px;padding-bottom:var(--space-2xl);padding-top:48px;padding-top:var(--space-2xl)}.loading{gap:16px;gap:var(--space-md)}.loading-spinner{animation:spin .8s linear infinite;border:4px solid #e8ecf1;border:4px solid var(--border-light);border-radius:9999px;border-radius:var(--radius-full);border-top-color:var(--primary-color);height:48px;width:48px}.alert{align-items:flex-start;border-radius:12px;border-radius:var(--radius-lg);font-size:14px;gap:16px;gap:var(--space-md);line-height:1.6;margin-bottom:24px;margin-bottom:var(--space-lg);padding:16px 24px;padding:var(--space-md) var(--space-lg)}.alert-success{background:#d1fae5;background:var(--success-light);border:1px solid #6ee7b7;color:#065f46}.alert-error{background:#fee2e2;background:var(--error-light);border:1px solid #fca5a5;color:#991b1b}.alert-warning{background:#fef3c7;background:var(--warning-light);border:1px solid #fcd34d;color:#92400e}.alert-info{background:#dbeafe;background:var(--info-light);border:1px solid #93c5fd;color:#1e40af}@media (max-width:1200px){.container{max-width:960px}}@media (max-width:992px){.container{max-width:720px}.page-hero-title{font-size:40px}}@media (max-width:768px){.container{max-width:540px;padding:0 16px;padding:0 var(--space-md)}.page-hero{padding:80px 0}.page-hero-title{font-size:32px;letter-spacing:1px}.page-hero-subtitle{font-size:16px}body{font-size:14px}}@media (max-width:576px){.container{padding:0 16px;padding:0 var(--space-md)}.btn{font-size:14px;padding:10px 20px}.page-hero-title{font-size:28px}}.site-header{background:var(--bg-primary);box-shadow:0 1px 20px #00000014;position:relative;z-index:50}.header-topbar{background:linear-gradient(135deg,#0f172a,#1e293b 50%,#0f172a);border-bottom:1px solid #ffffff0f;color:#94a3b8;font-size:13px;overflow:hidden;padding:8px 0;position:relative}.header-topbar:before{animation:shimmer 8s infinite;background:linear-gradient(90deg,#0000,#2babcf08,#0000);content:"";height:100%;left:-50%;position:absolute;top:0;width:200%}@keyframes shimmer{0%{transform:translateX(-100%)}to{transform:translateX(100%)}}.topbar-content{gap:var(--space-md);justify-content:space-between;position:relative;z-index:1}.topbar-content,.topbar-info{align-items:center;display:flex;flex-wrap:wrap}.topbar-info{gap:20px}.info-item{align-items:center;color:#cbd5e1;font-size:13px;gap:8px;padding:4px 0;transition:all var(--transition-fast)}.info-item:hover{color:var(--text-white);transform:translateY(-1px)}.info-icon{filter:drop-shadow(0 0 4px rgba(43,171,207,.3));font-size:15px}.info-divider{color:#334155;font-weight:200;-webkit-user-select:none;user-select:none}.topbar-actions{align-items:center;display:flex;gap:12px}.welcome-text{background:#2babcf1a;border:1px solid #2babcf33;border-radius:20px;color:#e2e8f0;font-size:13px;padding:4px 12px}.welcome-text strong{color:var(--text-white);font-weight:600}.action-link{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff0d;border:1px solid #ffffff1a;border-radius:20px;color:#e2e8f0;cursor:pointer;display:inline-flex;font-family:inherit;font-size:13px;font-weight:500;gap:6px;padding:6px 16px;text-decoration:none;transition:all var(--transition-normal)}.action-link:hover{background:#2babcf26;border-color:#2babcf66;box-shadow:0 4px 12px #2babcf33;color:var(--text-white);transform:translateY(-1px)}.admin-link:hover{background:#2babcf33}.logout-link:hover{background:#ef444426;border-color:#ef444466;box-shadow:0 4px 12px #ef444426;color:#fecaca}.login-link{background:linear-gradient(135deg,#2babcf4d,#2babcf1a);border-color:#2babcf80;color:var(--text-white)}.login-link:hover{background:linear-gradient(135deg,#2babcf66,#2babcf33);transform:translateY(-2px) scale(1.02)}.link-icon{font-size:14px}.header-navbar{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:linear-gradient(180deg,#fffffffa,#fffffff2);border-bottom:none;padding:20px 0;position:relative}.header-navbar:after{background:linear-gradient(90deg,#0000,#2babcf33,#0000);bottom:0;content:"";height:1px;left:0;position:absolute;right:0}.navbar-content{gap:var(--space-lg);justify-content:space-between}.brand-logo,.navbar-content{align-items:center;display:flex}.brand-logo{gap:16px;position:relative;text-decoration:none;transition:all var(--transition-normal)}.brand-logo:hover{transform:translateY(-2px)}.brand-logo:hover .logo-mark{box-shadow:0 8px 24px #2babcf59;transform:rotate(5deg) scale(1.05)}.logo-mark{align-items:center;background:var(--primary-gradient);border-radius:16px;box-shadow:0 6px 20px #2babcf4d;display:flex;height:52px;justify-content:center;overflow:hidden;position:relative;transition:all var(--transition-normal);width:52px}.logo-mark:before{animation:logoShine 6s infinite;background:linear-gradient(45deg,#0000,#ffffff1a,#0000);content:"";height:200%;left:-50%;position:absolute;top:-50%;transform:rotate(45deg);width:200%}@keyframes logoShine{0%{transform:translateX(-100%) rotate(45deg)}to{transform:translateX(100%) rotate(45deg)}}.logo-text-main{color:var(--text-white);font-size:22px;font-weight:900;letter-spacing:2px;position:relative;text-shadow:0 2px 8px #0003;z-index:1}.logo-brand{display:flex;flex-direction:column}.brand-name{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#1e293b,#0f172a 50%,#2babcf);-webkit-background-clip:text;background-clip:text;font-size:26px;font-weight:800;letter-spacing:3px;line-height:1.1;margin:0;position:relative}.brand-name:after{background:var(--primary-gradient);border-radius:2px;bottom:-4px;content:"";height:3px;left:0;position:absolute;width:40px}.brand-tagline{color:#64748b;font-size:12px;font-weight:600;letter-spacing:2px;margin:6px 0 0;text-transform:uppercase}.main-nav{align-items:center;display:flex;flex:1 1;gap:8px;justify-content:center}.nav-item{position:relative}.nav-item>a,.nav-link-main{align-items:center;border-radius:12px;color:#475569;display:flex;font-size:15px;font-weight:600;gap:6px;letter-spacing:.3px;padding:12px 22px;position:relative;text-decoration:none;transition:all var(--transition-normal)}.nav-item>a:hover,.nav-link-main:hover{background:linear-gradient(135deg,#2babcf14,#2babcf0a);color:#2babcf;transform:translateY(-1px)}.nav-label{position:relative}.nav-item>a:before,.nav-link-main:before{background:var(--primary-gradient);border-radius:3px 3px 0 0;bottom:0;content:"";height:3px;left:50%;opacity:0;position:absolute;transform:translateX(-50%);transition:all var(--transition-normal);width:0}.nav-item>a:hover:before,.nav-link-main:hover:before{opacity:1;width:30px}.nav-arrow{color:#94a3b8;font-size:10px;margin-left:2px;transition:all var(--transition-normal)}.nav-item.has-dropdown:hover .nav-arrow{color:#2babcf;transform:rotate(180deg)}.dropdown-panel{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#fffffffa;border:1px solid #2babcf1a;border-radius:20px;box-shadow:0 20px 60px #0000001f,0 0 0 1px #2babcf1a;left:50%;min-width:420px;opacity:0;padding:16px;position:absolute;top:calc(100% + 20px);transform:translateX(-50%) translateY(-15px);transition:all var(--transition-normal);visibility:hidden;z-index:60}.nav-item.has-dropdown:hover .dropdown-panel{opacity:1;transform:translateX(-50%) translateY(0);visibility:visible}.dropdown-grid{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(2,1fr)}.dropdown-link{align-items:center;background:#0000;border:none;border-radius:12px;color:#334155;cursor:pointer;display:flex;font-family:inherit;font-size:14px;font-weight:500;gap:12px;overflow:hidden;padding:14px 16px;position:relative;text-align:left;text-decoration:none;transition:all var(--transition-fast);width:100%}.dropdown-link:before{background:var(--primary-gradient);border-radius:0 2px 2px 0;bottom:0;content:"";left:0;opacity:0;position:absolute;top:0;transition:opacity var(--transition-fast);width:3px}.dropdown-link:hover{background:linear-gradient(135deg,#2babcf14,#2babcf0a);color:#2babcf;padding-left:20px;transform:translateX(6px)}.dropdown-link:hover:before{opacity:1}.dropdown-icon{align-items:center;background:linear-gradient(135deg,#2babcf1a,#2babcf0d);border-radius:12px;display:flex;flex-shrink:0;font-size:20px;height:40px;justify-content:center;transition:all var(--transition-normal);width:40px}.dropdown-link:hover .dropdown-icon{background:var(--primary-gradient);box-shadow:0 4px 12px #2babcf4d;color:var(--text-white);transform:scale(1.1) rotate(5deg)}.dropdown-text{flex:1 1;font-weight:500}.navbar-cta{flex-shrink:0}.btn-primary.btn-sm{background:var(--primary-gradient);border:none;border-radius:30px;box-shadow:0 4px 15px #2babcf4d;color:#fff;display:inline-block;font-size:14px;font-weight:600;overflow:hidden;padding:12px 28px;position:relative;text-decoration:none;transition:all var(--transition-normal)}.btn-primary.btn-sm:before{background:linear-gradient(90deg,#0000,#fff3,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s;width:100%}.btn-primary.btn-sm:hover:before{left:100%}.btn-primary.btn-sm:hover{box-shadow:0 8px 25px #2babcf66;transform:translateY(-2px) scale(1.02)}.btn-primary.btn-sm:active{transform:translateY(0) scale(.98)}@media (max-width:1200px){.main-nav{gap:4px}.nav-item>a,.nav-link-main{font-size:14px;padding:10px 16px}}@media (max-width:992px){.navbar-content{flex-direction:column;gap:var(--space-lg)}.main-nav{flex-wrap:wrap;justify-content:center;width:100%}.navbar-cta{display:none}}@media (max-width:768px){.topbar-content{flex-direction:column;text-align:center}.topbar-info{gap:var(--space-sm);justify-content:center}.info-divider{display:none}.topbar-actions{flex-wrap:wrap;justify-content:center}.brand-name{font-size:22px;letter-spacing:2px}.brand-tagline{font-size:11px;letter-spacing:1px}.logo-mark{height:46px;width:46px}.logo-text-main{font-size:19px}.main-nav{gap:6px}.nav-item>a,.nav-link-main{font-size:14px;padding:10px 14px}.dropdown-panel{background:linear-gradient(135deg,#2babcf0d,#2babcf05);border:1px solid #2babcf26;box-shadow:none;margin-top:12px;min-width:auto;opacity:1;position:static;transform:none;visibility:visible;width:100%}.dropdown-grid{grid-template-columns:1fr}.nav-arrow,.nav-item>a:before,.nav-link-main:before{display:none}}@media (max-width:576px){.header-topbar{padding:6px 0}.action-link,.info-item{font-size:12px}.action-link{padding:5px 14px}.brand-logo{gap:12px}.brand-name{font-size:20px}.main-nav{flex-direction:column}.main-nav,.nav-item,.nav-item.has-dropdown{width:100%}.nav-item>a,.nav-link-main{justify-content:center;width:100%}}.footer{background-color:#2c3e50;color:#ecf0f1;margin-top:auto;padding:40px 0 20px}.footer-container{margin:0 auto;max-width:1200px;padding:0 20px}.footer-main{grid-gap:40px;display:grid;gap:40px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:40px}.footer-section,.footer-title{margin-bottom:20px}.footer-title{border-bottom:2px solid #2babcf;color:#2babcf;font-size:18px;font-weight:700;padding-bottom:10px;position:relative}.footer-title:after{background-color:#2babcf;bottom:-2px;content:"";height:2px;left:0;position:absolute;width:50px}.footer-description{color:#bdc3c7;font-size:14px;line-height:1.6;margin-bottom:20px}.social-links{display:flex;gap:15px;margin-top:20px}.social-link{align-items:center;background-color:#34495e;border-radius:50%;display:flex;height:40px;justify-content:center;text-decoration:none;transition:all .3s ease;width:40px}.social-link:hover{box-shadow:0 5px 15px #0000004d;transform:translateY(-3px)}.social-link.wechat:hover{background-color:#07c160}.social-link.weibo:hover{background-color:#e6162d}.social-link.email:hover{background-color:#ea4335}.social-link.phone:hover{background-color:#34a853}.social-icon{font-size:18px}.footer-links{list-style:none;margin:0;padding:0}.footer-links li{margin-bottom:12px}.footer-link{align-items:center;color:#bdc3c7;display:flex;font-size:14px;text-decoration:none;transition:all .3s ease}.footer-link:before{color:#2babcf;content:"›";margin-right:8px;transition:transform .3s ease}.footer-link:hover{color:#2babcf;padding-left:5px}.footer-link:hover:before{transform:translateX(3px)}.contact-info{list-style:none;margin:0;padding:0}.contact-item{align-items:flex-start;display:flex;font-size:14px;line-height:1.5;margin-bottom:15px}.contact-icon{color:#2babcf;flex-shrink:0;font-size:16px;margin-right:10px;margin-top:2px}.contact-text{color:#bdc3c7}.footer-bottom{align-items:center;border-top:1px solid #34495e;display:flex;flex-direction:column;padding-top:20px;text-align:center}.footer-copyright{margin-bottom:15px}.footer-copyright p{color:#95a5a6;font-size:14px;margin:5px 0}.separator{color:#7f8c8d;margin:0 10px}.footer-notice{color:#7f8c8d!important;font-size:12px!important;font-style:italic;margin-top:10px!important}.footer-legal{align-items:center;display:flex;flex-wrap:wrap;gap:5px;justify-content:center}.legal-link{color:#bdc3c7;font-size:13px;text-decoration:none;transition:color .3s ease}.legal-link:hover{color:#2babcf;text-decoration:underline}@media (max-width:768px){.footer{padding:30px 0 15px}.footer-main{gap:30px;grid-template-columns:1fr}.footer-section{margin-bottom:30px}.footer-title{font-size:16px}.social-links{justify-content:center}.footer-bottom{text-align:center}.footer-legal{flex-direction:column;gap:10px}.separator{display:none}}@media (max-width:480px){.footer-container{padding:0 15px}.footer-main{gap:25px}.contact-item{font-size:13px}.footer-copyright p,.legal-link{font-size:12px}}.footer-section{animation:fadeInUp .5s ease forwards}.footer-section:first-child{animation-delay:.1s}.footer-section:nth-child(2){animation-delay:.2s}.footer-section:nth-child(3){animation-delay:.3s}.footer-section:nth-child(4){animation-delay:.4s}.home-page{background:#fff;color:#333;font-family:Microsoft YaHei,微软雅黑,Arial,sans-serif;min-height:100vh}.container{padding:0 20px}.home-banner{align-items:center;background:linear-gradient(135deg,#1a365d,#2d3748);color:#fff;display:flex;height:280px;justify-content:center;overflow:hidden;position:relative;text-align:center}.home-banner:before{background:url(https://images.unsplash.com/photo-1556761175-b413da4baf72?ixlib=rb-4.0.3&auto=format&fit=crop&w=1920&q=80) 50%/cover no-repeat;bottom:0;content:"";filter:brightness(.5);left:0;opacity:.2;position:absolute;right:0;top:0}.banner-container{margin:0 auto;max-width:800px;padding:0 20px;position:relative;z-index:2}.banner-content{animation:fadeInUp 1s ease-out}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.banner-title{color:#fff;font-size:36px;font-weight:700;line-height:1.2;margin-bottom:15px;text-shadow:2px 2px 4px #0000004d}.banner-subtitle{color:#cbd5e0;font-size:18px;line-height:1.4;margin-bottom:30px;text-shadow:1px 1px 2px #0000004d}.banner-actions{display:flex;gap:20px;justify-content:center;margin-top:20px}.main-content{background:#f8fafc;padding:40px 0}.content-grid-2x2{grid-gap:30px;display:grid;gap:30px;grid-template-columns:repeat(2,1fr);margin-bottom:40px}@media (max-width:768px){.content-grid-2x2{grid-template-columns:1fr}}.content-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 4px 20px #00000014;display:flex;flex-direction:column;height:100%;padding:25px;transition:transform .3s ease,box-shadow .3s ease}.content-card:hover{box-shadow:0 8px 30px #0000001f;transform:translateY(-5px)}.card-header{border-bottom:2px solid #2babcf;justify-content:space-between;margin-bottom:20px;padding-bottom:15px}.card-header,.card-title{align-items:center;display:flex}.card-title{color:#2d3748;font-size:20px;font-weight:600;gap:10px;margin:0}.card-icon{font-size:22px}.view-all{color:#2babcf;font-size:14px;font-weight:500;text-decoration:none;transition:color .3s ease}.view-all:hover{color:#1a8ba8;text-decoration:underline}.article-list-simple{display:flex;flex:1 1;flex-direction:column;gap:16px}.article-item-simple{align-items:flex-start;border-bottom:1px solid #f1f5f9;display:flex;justify-content:space-between;padding:12px 0}.article-item-simple:last-child{border-bottom:none}.article-title-simple{flex:1 1;font-size:15px;font-weight:500;line-height:1.4;margin:0;padding-right:15px}.article-link{color:#2d3748;transition:color .3s ease}.article-link:hover{color:#2babcf}.article-date-simple{color:#718096;flex-shrink:0;font-size:13px;white-space:nowrap}.empty-state{align-items:center;color:#718096;display:flex;flex:1 1;flex-direction:column;justify-content:center;padding:40px 20px}.empty-icon{display:block;font-size:48px;margin-bottom:15px}.quick-nav-section{border-top:1px solid #e2e8f0;margin-top:40px;padding-top:30px}.section-header{margin-bottom:25px;text-align:center}.section-title{align-items:center;color:#2d3748;display:flex;gap:10px;justify-content:center;margin:0}.title-icon{font-size:26px}.quick-nav-long{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(4,1fr)}@media (max-width:992px){.quick-nav-long{grid-template-columns:repeat(2,1fr)}}@media (max-width:576px){.quick-nav-long{grid-template-columns:1fr}}.nav-item-long{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:10px;box-shadow:0 2px 8px #0000000d;color:inherit;display:flex;gap:15px;padding:20px;text-decoration:none;transition:all .3s ease}.nav-item-long:hover{background:#f8fafc;border-color:#2babcf;box-shadow:0 4px 12px #0000001a;transform:translateY(-3px)}.nav-icon-long{align-items:center;background:linear-gradient(135deg,#2babcf,#1a8ba8);border-radius:12px;box-shadow:0 2px 8px #2babcf33;color:#fff;display:flex;flex-shrink:0;font-size:32px;height:60px;justify-content:center;width:60px}.nav-text-long{flex:1 1;min-width:0}.nav-title-long{color:#2d3748;font-size:16px;font-weight:600;margin:0 0 5px;white-space:nowrap}.nav-desc-long,.nav-title-long{overflow:hidden;text-overflow:ellipsis}.nav-desc-long{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:#718096;display:-webkit-box;font-size:13px;line-height:1.4;margin:0}.btn{display:inline-block;padding:10px 20px}.btn-primary:hover{background-color:#1a8ba8;box-shadow:0 4px 12px #2babcf4d}.btn-outline{background-color:initial;border:1px solid #2babcf;color:#2babcf}.btn-outline:hover{background-color:#2babcf;color:#fff}.btn-lg{font-size:16px;padding:12px 30px}.btn-sm{padding:8px 16px}.alert{align-items:center;border-radius:8px;display:flex;gap:10px;margin:20px 0;padding:15px 20px}.alert-error{background-color:#fee;border:1px solid #fcc;color:#c33}@media (max-width:768px){.banner-title{font-size:28px}.banner-subtitle{font-size:16px}.banner-actions{flex-direction:column;gap:10px}.card-title{font-size:18px}.content-grid-2x2{gap:20px}.content-card{padding:20px}.article-title-simple{font-size:14px}.article-date-simple{font-size:12px}.nav-item-long{padding:15px}.nav-icon-long{font-size:28px;height:50px;width:50px}}@media (max-width:576px){.home-banner{height:240px}.banner-title{font-size:24px}.banner-subtitle{font-size:14px}.section-title{font-size:20px}.nav-title-long{font-size:14px}.nav-desc-long{font-size:12px}}.article-item-simple:hover{background:#f8fafc;border-radius:6px;margin:0 -12px;padding:12px}.article-item-simple:hover .article-link{color:#2babcf}.company-intro-page{background:#f8fafc;min-height:100vh}.company-intro-page .container{margin:0 auto;max-width:1100px;padding:50px 20px}.intro-hero{background:linear-gradient(135deg,#0f172a,#1e293b 50%,#2babcf);border-radius:0;margin-bottom:0;overflow:hidden;padding:70px 40px;position:relative;text-align:center}.intro-hero:before{animation:pulse 8s ease-in-out infinite;background:radial-gradient(circle,#2babcf1a 0,#0000 70%);content:"";height:200%;left:-50%;position:absolute;top:-50%;width:200%}@keyframes pulse{0%,to{opacity:.5;transform:scale(1)}50%{opacity:.8;transform:scale(1.1)}}.intro-title{color:#fff;font-size:36px;font-weight:700;letter-spacing:2px;margin:0 0 12px;position:relative;text-shadow:0 4px 20px #0000004d;z-index:1}.intro-subtitle{color:#ffffffe6;font-size:16px;font-weight:500;letter-spacing:1px;margin:0;position:relative;z-index:1}.intro-section{background:#fff;border-radius:16px;box-shadow:0 2px 12px #0000000d;margin-bottom:25px;padding:35px 40px}.section-title{border-bottom:2px solid #2babcf;display:inline-block;font-size:24px;margin:0 0 20px}.section-title:after{background:linear-gradient(90deg,#2babcf,#0000);bottom:-2px;height:2px;left:0;width:50px}.section-text{color:#475569;font-size:15px;line-height:1.8;margin-bottom:15px;text-align:justify}.stats-grid{grid-gap:20px;gap:20px;margin:30px 0}.stats-grid .stat-item{border-radius:12px;box-shadow:0 6px 20px #2babcf33;color:#fff;overflow:hidden;padding:25px 15px;position:relative;text-align:center;transition:all .3s ease}.stats-grid .stat-item:hover{box-shadow:0 10px 30px #2babcf4d;transform:translateY(-5px)}.stats-grid .stat-icon{font-size:26px}.stats-grid .stat-number{font-size:30px;font-weight:700;line-height:1;margin:0;text-shadow:0 2px 8px #00000026}.stats-grid .stat-label{color:#64748b;display:block;font-size:13px;font-weight:500;letter-spacing:.3px;margin-top:6px;opacity:.95}.mission-vision-section{margin-bottom:25px}.mission-vision-grid{grid-gap:25px;display:grid;gap:25px;grid-template-columns:repeat(2,1fr)}.mv-card{background:linear-gradient(135deg,#f0f9ff,#e0f2fe);border-left:4px solid #2babcf;border-radius:12px;padding:30px;text-align:center;transition:all .3s ease}.mv-card:last-child{background:linear-gradient(135deg,#fef3c7,#fde68a);border-left-color:#f59e0b}.mv-card:hover{box-shadow:0 8px 25px #00000014;transform:translateY(-5px)}.mv-icon{display:block;font-size:40px;margin-bottom:15px}.mv-card h3{color:#1e293b;font-size:18px;font-weight:600;margin:0 0 10px}.mv-card p{color:#475569;font-size:15px;line-height:1.6;margin:0}.values-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(4,1fr);margin:25px 0}.values-grid .value-card{background:#fff;border:2px solid #f1f5f9;border-radius:12px;overflow:hidden;padding:25px 20px;position:relative;text-align:center;transition:all .3s ease}.values-grid .value-card:before{background:var(--primary-gradient);content:"";height:3px;left:0;position:absolute;right:0;top:0;transform:scaleX(0);transition:transform .3s ease}.values-grid .value-card:hover{border-color:#2babcf;box-shadow:0 10px 30px #2babcf1f;transform:translateY(-5px)}.values-grid .value-card:hover:before{transform:scaleX(1)}.values-grid .value-icon{display:block;font-size:34px;margin-bottom:12px}.values-grid .value-card h3{color:#1e293b;font-size:17px;font-weight:600;margin:0 0 6px}.values-grid .value-card p{color:#64748b;font-size:13px;font-weight:500;margin:0}.services-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(3,1fr);margin:25px 0}.services-grid .service-card{background:linear-gradient(135deg,#f8fafc,#f1f5f9);border:2px solid #0000;border-radius:12px;padding:25px 20px;text-align:center;transition:all .3s ease}.services-grid .service-card:hover{background:#fff;border-color:#2babcf;box-shadow:0 8px 25px #2babcf1a;transform:translateY(-5px)}.services-grid .service-icon{align-items:center;background:linear-gradient(135deg,#2babcf1a,#2babcf0d);border-radius:12px;display:block;display:flex;font-size:34px;height:60px;justify-content:center;margin:0 auto 12px;transition:all .3s ease;width:60px}.services-grid .service-card:hover .service-icon{background:var(--primary-gradient);color:#fff;transform:scale(1.1)}.services-grid .service-card h3{color:#1e293b;font-size:16px;font-weight:600;margin:0}.team-highlights{grid-gap:18px;display:grid;gap:18px;grid-template-columns:repeat(4,1fr);margin:25px 0}.team-highlights .team-item{background:#fff;border:2px solid #f1f5f9;border-radius:10px;padding:22px 18px;text-align:center;transition:all .3s ease}.team-highlights .team-item:hover{border-color:#2babcf;box-shadow:0 6px 20px #2babcf1a;transform:translateY(-3px)}.team-highlights .team-number{color:#2babcf;display:block;font-size:28px;font-weight:700;margin-bottom:6px}.team-highlights .team-label{color:#64748b;display:block;font-size:13px;font-weight:500}.advantages-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(2,1fr);margin:25px 0}.advantages-grid .advantage-card{align-items:flex-start;background:#fff;border:2px solid #f1f5f9;border-radius:12px;display:flex;gap:20px;padding:25px;transition:all .3s ease}.advantages-grid .advantage-card:hover{border-color:#2babcf;box-shadow:0 6px 20px #2babcf14;transform:translateX(5px)}.advantages-grid .advantage-number{color:#2babcf33;flex-shrink:0;font-size:36px;font-weight:700;line-height:1;transition:all .3s ease}.advantages-grid .advantage-card:hover .advantage-number{color:#2babcf}.advantages-grid .advantage-content{flex:1 1}.advantages-grid .advantage-content h3{color:#1e293b;font-size:17px;font-weight:600;margin:0 0 8px}.advantages-grid .advantage-content p{color:#64748b;font-size:14px;line-height:1.6;margin:0}.loading-spinner{height:46px;width:46px}@media (max-width:1200px){.services-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:992px){.company-intro-page .container{padding:40px 20px}.intro-title{font-size:30px}.stats-grid,.team-highlights,.values-grid{grid-template-columns:repeat(2,1fr)}.intro-section{padding:30px}.advantages-grid,.mission-vision-grid{grid-template-columns:1fr}}@media (max-width:768px){.intro-hero{padding:50px 20px}.intro-title{font-size:26px;letter-spacing:1px}.intro-subtitle{font-size:14px}.intro-section{border-radius:12px;padding:25px 20px}.section-title{font-size:20px}.section-text{font-size:14px}.stats-grid{gap:15px;grid-template-columns:repeat(2,1fr)}.stats-grid .stat-item{padding:22px 12px}.stats-grid .stat-number{font-size:26px}.services-grid,.values-grid{grid-template-columns:1fr}.team-highlights{gap:12px;grid-template-columns:repeat(2,1fr)}.mv-card{padding:25px}.advantages-grid .advantage-card{flex-direction:column;gap:12px;padding:22px 20px}.advantages-grid .advantage-number{font-size:30px}}@media (max-width:480px){.intro-title{font-size:22px}.stats-grid,.team-highlights{grid-template-columns:1fr}.section-title{font-size:18px}}.bidding-page{background-color:#f5f7fa;min-height:100vh}.page-header-section{background:linear-gradient(135deg,#2c3e50,#1a252f);padding:60px 0}.page-title{font-size:36px;font-weight:700;margin:0 0 10px;text-shadow:2px 2px 4px #0000004d}.page-subtitle{font-size:16px}.container{padding:30px 20px}.loading-container{padding:80px 0}.error-section{background:#fff;border-radius:12px;box-shadow:0 4px 6px #0000001a;margin-bottom:30px;padding:40px;text-align:center}.error-message{color:#e74c3c;justify-content:center}.error-icon{font-size:24px}.bidding-content{grid-gap:30px;align-items:start;display:grid;gap:30px;grid-template-columns:280px 1fr}@media (max-width:992px){.bidding-content{grid-template-columns:1fr}}.sidebar{position:sticky;top:20px}.sidebar-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;margin-bottom:24px;padding:24px}.sidebar-title{align-items:center;border-bottom:2px solid #f0f0f0;color:#333;display:flex;font-size:18px;font-weight:600;gap:10px;margin:0 0 20px;padding-bottom:15px}.sidebar-icon{font-size:20px}.category-nav{display:flex;flex-direction:column;gap:8px}.category-btn{align-items:center;background:#f8f9fa;border:2px solid #0000;border-radius:8px;color:#555;cursor:pointer;display:flex;font-size:15px;justify-content:space-between;padding:14px 16px;transition:all .3s ease}.category-btn:hover{background:#e8f4f8;color:#2babcf;transform:translateX(4px)}.category-btn.active{background:#e8f4f8;border-color:#2babcf;color:#2babcf}.category-name{font-weight:500}.category-count{background:#2babcf;border-radius:20px;color:#fff;font-size:12px;font-weight:700;padding:4px 12px}.stats-list{display:flex;flex-direction:column;gap:16px}.stat-item{align-items:center;border-bottom:1px solid #f0f0f0;display:flex;justify-content:space-between;padding:12px 0}.stat-item:last-child{border-bottom:none}.stat-label{font-size:14px}.stat-value{color:#2babcf;font-size:20px}.main-content{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;padding:30px}.content-header{border-bottom:2px solid #f0f0f0;justify-content:space-between;padding-bottom:20px}.content-title{color:#333;font-size:24px;font-weight:600;margin:0}.article-count{color:#999;font-size:14px}.empty-icon{font-size:64px;opacity:.5}.empty-state h3{color:#666;font-size:20px}.empty-state p{color:#999;font-size:14px}.articles-list{display:flex;flex-direction:column;gap:16px}.article-card{background:#fafbfc;border:1px solid #e8e8e8;border-radius:10px;padding:20px;transition:all .3s ease}.article-card:hover{background:#fff;border-color:#d0e8f0;box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.article-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.article-category{font-size:12px;font-weight:600;padding:4px 12px}.article-category.招标公告{background:#e3f2fd;color:#1976d2}.article-category.澄清公告{background:#fff3e0;color:#f57c00}.article-category.中标公示{background:#e8f5e9;color:#388e3c}.article-category.采购意向公开{background:#f3e5f5;color:#7b1fa2}.article-date{color:#999;font-size:13px}.article-title{font-size:17px;line-height:1.5;margin:0 0 12px}.article-title a{color:#333;text-decoration:none;transition:color .3s ease}.article-title a:hover{color:#2babcf}.article-footer{align-items:center;border-top:1px solid #eee;display:flex;justify-content:space-between;padding-top:12px}.article-author,.article-views{align-items:center;color:#888;display:flex;font-size:13px;gap:6px}.author-icon,.views-icon{font-size:14px}@media (max-width:768px){.page-header-section{padding:40px 20px}.page-title{font-size:28px}.container{padding:20px 15px}.main-content{padding:20px}.content-header{align-items:flex-start;flex-direction:column;gap:10px}.article-card{padding:16px}.article-footer,.article-header{align-items:flex-start;flex-direction:column;gap:8px}}.pagination{flex-wrap:wrap;gap:8px;margin:30px 0}.pagination-btn{border:2px solid #e0e0e0;color:#666}.pagination-btn:hover:not(:disabled){background:#e8f4f8}.pagination-pages{display:flex;gap:6px}.pagination-page{align-items:center;background:#fff;border:2px solid #e0e0e0;border-radius:8px;color:#666;cursor:pointer;display:flex;font-size:14px;font-weight:500;height:40px;justify-content:center;transition:all .3s ease;width:40px}.pagination-page:hover{background:#e8f4f8;border-color:#2babcf;color:#2babcf}.pagination-page.active{background:#2babcf;border-color:#2babcf;color:#fff}.pagination-info{color:#999;margin-top:10px;text-align:center}@media (max-width:480px){.page-title{font-size:24px}.sidebar-card{padding:16px}.article-title{font-size:15px}.pagination{gap:6px}.pagination-btn{font-size:13px;padding:8px 16px}.pagination-page{font-size:13px;height:36px;width:36px}}.policies-page{background:#f8fafc;min-height:100vh}.page-header-section{background:linear-gradient(135deg,#1e3a5f,#0f172a 50%,#2babcf)}.page-header-section:before{background:radial-gradient(circle,#2babcf26 0,#0000 70%);border-radius:50%;height:500px;right:-10%;top:-50%;width:500px}.container{padding:40px 20px}.loading-container{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:100px 20px}.loading-spinner{margin-bottom:20px}.loading-container p{color:#64748b;font-size:16px;margin:0}.category-tabs{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-bottom:40px}.category-tab{background:#fff;border:2px solid #e2e8f0;border-radius:30px;color:#64748b;cursor:pointer;font-size:14px;font-weight:600;padding:10px 24px;transition:all .3s ease}.category-tab:hover{border-color:#2babcf;color:#2babcf;transform:translateY(-2px)}.category-tab.active{background:var(--primary-gradient);border-color:#0000;box-shadow:0 4px 15px #2babcf4d;color:#fff}.policies-list-section{margin-bottom:60px}.empty-state{background:#fff;border-radius:20px;padding:80px 20px;text-align:center}.empty-icon{font-size:72px;margin-bottom:20px;opacity:.4}.empty-state h3{color:#475569;font-size:24px;font-weight:700;margin:0 0 10px}.empty-state p{color:#94a3b8;font-size:15px;margin:0}.policies-grid{grid-gap:30px;display:grid;gap:30px;grid-template-columns:repeat(3,1fr)}.policy-card{background:#fff;border:2px solid #f1f5f9;border-radius:20px;display:flex;flex-direction:column;overflow:hidden;padding:30px;position:relative;transition:all .3s ease}.policy-card:before{background:var(--primary-gradient);content:"";height:5px;left:0;position:absolute;right:0;top:0;transform:scaleX(0);transition:transform .3s ease}.policy-card:hover{border-color:#2babcf;box-shadow:0 15px 40px #2babcf26;transform:translateY(-8px)}.policy-card:hover:before{transform:scaleX(1)}.policy-badge{align-self:flex-start;background:linear-gradient(135deg,#2babcf1a,#2babcf0d);border-radius:20px;color:#2babcf;display:inline-block;font-size:12px;font-weight:700;letter-spacing:.5px;margin-bottom:18px;padding:6px 16px;text-transform:uppercase}.policy-header{align-items:center;display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;margin-bottom:16px}.policy-date,.policy-views{align-items:center;color:#94a3b8;display:flex;font-size:13px;gap:6px}.date-icon,.views-icon{font-size:14px}.policy-title{color:#1e293b;flex:1 1;font-size:18px;font-weight:700;line-height:1.4;margin:0 0 14px}.policy-title a{color:#1e293b;text-decoration:none;transition:color .3s ease}.policy-title a:hover{color:#2babcf}.policy-excerpt{color:#64748b;flex:1 1;font-size:14px;line-height:1.7;margin:0 0 20px}.policy-footer{border-top:1px solid #f1f5f9;margin-top:auto;padding-top:16px}.read-more{align-items:center;color:#2babcf;display:inline-flex;font-size:14px;font-weight:600;gap:6px;text-decoration:none;transition:all .3s ease}.read-more:hover{gap:10px}.read-more .arrow{transition:transform .3s ease}.read-more:hover .arrow{transform:translateX(4px)}.interpretation-section{margin-bottom:60px}.interpretation-grid{grid-gap:30px;display:grid;gap:30px;grid-template-columns:repeat(3,1fr)}.interpretation-card{background:#fff;border:2px solid #f1f5f9;border-radius:20px;padding:35px 30px;text-align:center;transition:all .3s ease}.interpretation-card:hover{border-color:#2babcf;box-shadow:0 15px 40px #2babcf26;transform:translateY(-8px)}.interpretation-icon{display:block;font-size:48px;margin-bottom:20px}.interpretation-title{color:#1e293b;font-size:18px;font-weight:700;margin:0 0 12px}.interpretation-desc{color:#64748b;font-size:14px;line-height:1.7;margin:0 0 20px}.interpretation-link{color:#2babcf;display:inline-block;font-size:14px;font-weight:600;text-decoration:none;transition:all .3s ease}.interpretation-link:hover{text-decoration:underline}.consult-section{background:var(--primary-gradient);border-radius:20px;overflow:hidden;padding:50px 40px;position:relative}.consult-section:before{background:radial-gradient(circle,#ffffff1a 0,#0000 70%);border-radius:50%;content:"";height:400px;position:absolute;right:-10%;top:-50%;width:400px}.consult-content{align-items:center;display:flex;gap:30px;justify-content:space-between;position:relative;z-index:1}.consult-text h3{color:#fff;font-size:26px;font-weight:700;margin:0 0 8px}.consult-text p{color:#ffffffe6;font-size:16px;margin:0}@media (max-width:1200px){.interpretation-grid,.policies-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:992px){.page-title{font-size:36px}.container{padding:30px 20px}.consult-content{flex-direction:column;text-align:center}}@media (max-width:768px){.page-header-section{padding:50px 20px}.page-title{font-size:28px;letter-spacing:2px}.page-subtitle{font-size:15px}.category-tabs{gap:8px}.category-tab{font-size:13px;padding:8px 18px}.interpretation-grid,.policies-grid{gap:20px;grid-template-columns:1fr}.interpretation-card,.policy-card{padding:25px 20px}.section-title{font-size:26px}.consult-section{padding:40px 25px}.consult-text h3{font-size:22px}}@media (max-width:480px){.page-title{font-size:24px}.category-tabs{justify-content:flex-start}}.contact-page{background:#f8fafc;min-height:100vh}.page-header-section{background:linear-gradient(135deg,#0f172a,#1e293b 50%,#2babcf);color:#fff;overflow:hidden;padding:70px 0;position:relative;text-align:center}.page-header-section:before{background:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Ccircle cx='80' cy='20' r='30' fill='rgba(255,255,255,0.03)'/%3E%3Ccircle cx='20' cy='80' r='40' fill='rgba(43,171,207,0.05)'/%3E%3C/svg%3E");bottom:0;content:"";left:0;opacity:.5;position:absolute;right:0;top:0}.page-title{color:#fff;font-size:42px;font-weight:800;letter-spacing:3px;margin:0 0 12px;text-shadow:0 4px 20px #0000004d}.page-subtitle,.page-title{position:relative;z-index:1}.page-subtitle{font-size:18px;font-weight:500;letter-spacing:1px;margin:0;opacity:.9}.container{margin:0 auto;max-width:1200px;padding:10px 20px}.contact-container{grid-gap:40px;display:grid;gap:40px;grid-template-columns:1fr 1fr;margin-bottom:50px}.contact-info-section{display:flex;flex-direction:column;gap:25px}.info-card{background:#fff;border-radius:20px;box-shadow:0 4px 20px #00000014;padding:40px}.info-title{border-bottom:3px solid #2babcf;color:#1e293b;display:inline-block;font-size:28px;font-weight:700;margin:0 0 30px;padding-bottom:15px}.info-items{display:flex;flex-direction:column;gap:25px;margin-bottom:35px}.info-item{align-items:flex-start;gap:20px}.info-icon-wrapper{align-items:center;background:linear-gradient(135deg,#2babcf1a,#2babcf0d);border-radius:14px;display:flex;flex-shrink:0;height:56px;justify-content:center;width:56px}.info-icon{font-size:26px}.info-content{flex:1 1}.info-label{color:#64748b;font-size:14px;font-weight:600;letter-spacing:.5px;margin:0 0 6px;text-transform:uppercase}.info-value{color:#1e293b;font-size:16px;line-height:1.6;margin:0}.info-value a{color:#2babcf;text-decoration:none;transition:color .3s ease}.info-value a:hover{color:#1a8aa8;text-decoration:underline}.work-hours{background:linear-gradient(135deg,#f0f9ff,#e0f2fe);border-radius:16px;padding:30px}.hours-title{align-items:center;color:#1e293b;display:flex;font-size:18px;font-weight:700;gap:10px;margin:0 0 20px}.hours-title:before{content:"⏰";font-size:22px}.hours-list{display:flex;flex-direction:column;gap:12px}.hour-item{align-items:center;background:#fff;border-radius:10px;display:flex;justify-content:space-between;padding:14px 20px;transition:all .3s ease}.hour-item:hover{box-shadow:0 4px 12px #2babcf1a;transform:translateX(5px)}.day{color:#475569;font-weight:600}.day,.time{font-size:15px}.time{color:#2babcf;font-weight:700}.contact-form-section{display:flex;flex-direction:column;gap:25px}.form-card{border-radius:20px;box-shadow:0 4px 20px #00000014;padding:40px}.form-title{color:#1e293b;font-size:28px;font-weight:700;margin:0 0 8px}.form-subtitle{color:#64748b;font-size:15px;margin:0 0 30px}.contact-form{display:flex;flex-direction:column;gap:24px}.form-label{color:#475569;font-weight:600;letter-spacing:.3px}.form-input,.form-textarea{background:#f8fafc;border:2px solid #e2e8f0;border-radius:12px;color:#1e293b;font-family:inherit;font-size:15px;padding:14px 18px;transition:all .3s ease;width:100%}.form-input:focus,.form-textarea:focus{background:#fff;border-color:#2babcf;box-shadow:0 0 0 4px #2babcf1a;outline:none}.form-input::placeholder,.form-textarea::placeholder{color:#94a3b8}.form-textarea{min-height:120px;resize:vertical}.btn-primary.btn-lg{background:var(--primary-gradient);border:none;border-radius:12px;box-shadow:0 4px 15px #2babcf4d;color:#fff;cursor:pointer;font-size:16px;font-weight:600;padding:16px 32px;transition:all .3s ease}.btn-primary.btn-lg:hover{box-shadow:0 8px 25px #2babcf66;transform:translateY(-2px)}.btn-primary.btn-lg:active{transform:translateY(0)}.service-locations{margin-bottom:50px}.section-title{color:#1e293b;font-size:32px;font-weight:700;margin:0 0 35px;padding-bottom:15px;position:relative;text-align:center}.section-title:after{background:var(--primary-gradient);border-radius:2px;bottom:0;content:"";height:4px;left:50%;position:absolute;transform:translateX(-50%);width:80px}.locations-grid{grid-gap:25px;display:grid;gap:25px;grid-template-columns:repeat(4,1fr)}.location-card{background:#fff;border:2px solid #f1f5f9;border-radius:16px;overflow:hidden;padding:30px 25px;position:relative;text-align:center;transition:all .3s ease}.location-card:before{background:var(--primary-gradient);content:"";height:4px;left:0;position:absolute;right:0;top:0;transform:scaleX(0);transition:transform .3s ease}.location-card:hover{border-color:#2babcf;box-shadow:0 15px 40px #2babcf26;transform:translateY(-10px)}.location-card:hover:before{transform:scaleX(1)}.location-icon{display:block;font-size:42px;margin-bottom:15px}.location-name{color:#1e293b;font-size:18px;font-weight:700;margin:0 0 12px}.location-address,.location-phone{color:#64748b;font-size:14px;line-height:1.6;margin:6px 0}.transport-guide{background:#fff;border-radius:20px;box-shadow:0 4px 20px #00000014;padding:45px}.guide-content{grid-gap:35px;display:grid;gap:35px;grid-template-columns:repeat(3,1fr)}.guide-item{align-items:flex-start;background:linear-gradient(135deg,#f8fafc,#f1f5f9);border-radius:16px;display:flex;gap:20px;padding:25px;transition:all .3s ease}.guide-item:hover{box-shadow:0 8px 25px #2babcf1f;transform:translateY(-5px)}.guide-icon{align-items:center;background:#fff;border-radius:14px;box-shadow:0 4px 12px #00000014;display:flex;flex-shrink:0;font-size:36px;height:64px;justify-content:center;width:64px}.guide-info{flex:1 1}.guide-info h4{color:#1e293b;font-size:18px;font-weight:700;margin:0 0 10px}.guide-info p{color:#64748b;font-size:14px;line-height:1.7;margin:0}@media (max-width:1200px){.locations-grid{grid-template-columns:repeat(2,1fr)}.guide-content{grid-template-columns:1fr}}@media (max-width:992px){.contact-container{grid-template-columns:1fr}.page-title{font-size:36px}.container{padding:40px 20px}}@media (max-width:768px){.page-header-section{padding:50px 20px}.page-title{font-size:28px;letter-spacing:2px}.page-subtitle{font-size:15px}.form-card,.info-card{padding:30px 25px}.info-items{gap:20px}.info-icon-wrapper{height:48px;width:48px}.info-icon{font-size:22px}.form-row,.locations-grid{grid-template-columns:1fr}.section-title{font-size:26px}.transport-guide{padding:35px 25px}.guide-item{flex-direction:column;padding:25px 20px;text-align:center}.guide-icon{font-size:28px;height:56px;width:56px}}@media (max-width:480px){.page-title{font-size:24px}.form-card,.info-card,.work-hours{padding:25px 20px}}.article-create-page{padding:20px}.page-header{margin-bottom:30px}.page-title{color:#2babcf;font-size:1.8rem;margin-bottom:10px}.page-description{color:#666;line-height:1.6}.create-container{grid-gap:30px;display:grid;gap:30px;grid-template-columns:2fr 1fr}@media (max-width:992px){.create-container{grid-template-columns:1fr}}.form-card{background:#fff;border-radius:10px;box-shadow:0 4px 6px #0000001a;padding:30px}.article-form{margin-top:20px}.form-group{margin-bottom:25px}.form-label{color:#333;display:block;font-weight:700;margin-bottom:8px}.form-label.required:after{color:#e74c3c;content:" *"}.form-control{background-color:#fff;border:2px solid #e0e0e0;border-radius:6px;font-size:16px;padding:12px 15px;transition:all .3s ease}.form-control:focus{border-color:#2babcf}.form-control:disabled{background-color:#f8f9fa;opacity:.7}textarea.form-control{line-height:1.6;min-height:200px;resize:vertical}.form-help{color:#999;display:block;font-size:.9rem;margin-top:5px}.form-row{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr 1fr;margin-bottom:25px}@media (max-width:768px){.form-row{gap:15px;grid-template-columns:1fr}}.form-actions{border-top:1px solid #eee;display:flex;gap:15px;justify-content:flex-end;margin-top:30px;padding-top:20px}.btn{border:none;border-radius:6px;font-size:16px;font-weight:500;padding:12px 30px}.btn-primary{background-color:#2babcf}.btn-primary:hover:not(:disabled){background-color:#1a8ba8;box-shadow:0 4px 8px #2babcf4d;transform:translateY(-2px)}.btn-secondary{background-color:#6c757d;color:#fff}.btn-secondary:hover:not(:disabled){background-color:#545b62;transform:translateY(-2px)}.error-message{background-color:#f8d7da;border:1px solid #f5c6cb;border-radius:6px;color:#721c24}.error-message,.success-message{align-items:center;display:flex;gap:10px;margin-bottom:20px;padding:15px}.success-message{background-color:#d4edda;border:1px solid #c3e6cb;border-radius:6px;color:#155724}.form-help-card{align-self:start;background:#fff;border-radius:10px;box-shadow:0 4px 6px #0000001a;padding:25px;position:sticky;top:20px}.help-title{align-items:center;color:#333;display:flex;font-size:1.3rem;gap:10px;margin-bottom:20px}.help-section{margin-bottom:25px}.help-section:last-child{margin-bottom:0}.help-section h4{color:#2babcf;font-size:1.1rem;margin-bottom:10px}.help-section ul{list-style:none;margin:0;padding:0}.help-section li{color:#666;line-height:1.5;padding:8px 0 8px 20px;position:relative}.help-section li:before{color:#2babcf;content:"•";font-weight:700;left:0;position:absolute}.rich-text-editor{border:2px solid #e0e0e0;border-radius:6px;overflow:hidden}.editor-toolbar{background-color:#f8f9fa;border-bottom:1px solid #e0e0e0;display:flex;flex-wrap:wrap;gap:5px;padding:10px}.editor-button{background:#fff;border:1px solid #ddd;border-radius:4px;cursor:pointer;font-size:14px;padding:8px 12px;transition:all .2s ease}.editor-button:hover{background-color:#f0f0f0}.editor-button.active{background-color:#2babcf;border-color:#2babcf;color:#fff}.editor-content{font-size:16px;line-height:1.6;min-height:300px;outline:none;padding:15px}.editor-content:empty:before{color:#999;content:"请输入文章内容..."}.upload-section{border:2px dashed #ddd;border-radius:6px;margin-bottom:20px;padding:30px;text-align:center;transition:all .3s ease}.upload-section:hover{background-color:#f8fdff;border-color:#2babcf}.upload-icon{color:#999;font-size:2.5rem;margin-bottom:15px}.upload-text{color:#666;margin-bottom:10px}.upload-button{background-color:#2babcf;border-radius:6px;color:#fff;cursor:pointer;display:inline-block;padding:10px 20px;transition:background-color .3s ease}.upload-button:hover{background-color:#1a8ba8}.upload-file{display:none}.uploaded-files{margin-top:15px}.uploaded-file{background-color:#f8f9fa;border-radius:6px;justify-content:space-between;margin-bottom:8px;padding:10px}.file-info,.uploaded-file{align-items:center;display:flex}.file-info{gap:10px}.file-icon{color:#2babcf}.file-name{color:#333}.file-remove{background:none;border:none;color:#e74c3c;cursor:pointer;font-size:1.2rem}.preview-section{border-top:1px solid #eee;margin-top:30px;padding-top:20px}.preview-title{align-items:center;color:#333;display:flex;font-size:1.2rem;gap:10px;margin-bottom:15px}.preview-content{background-color:#f8f9fa;border-radius:6px;max-height:300px;overflow-y:auto;padding:20px}@media (max-width:768px){.article-create-page{padding:15px}.form-card{padding:20px}.form-help-card{padding:20px;position:static}.form-actions{flex-direction:column}.btn{width:100%}}.tiptap-editor-container{background:#fff;border:2px solid #e0e0e0;border-radius:6px;overflow:hidden;transition:all .3s ease}.tiptap-editor-container:focus-within{border-color:#2babcf;box-shadow:0 0 0 3px #2babcf1a}.tiptap-editor-content{font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Hiragino Sans GB,Microsoft YaHei,微软雅黑,Arial,sans-serif;font-size:16px;line-height:1.8;min-height:400px;outline:none;padding:20px}.tiptap-editor-content:focus{outline:none}.tiptap-editor-content p{margin-bottom:1em}.tiptap-editor-content p.is-editor-empty:first-child:before{color:#999;content:attr(data-placeholder);float:left;height:0;pointer-events:none}.tiptap-editor-content h1{font-size:2em;font-weight:700;line-height:1.4;margin:1.5em 0 .5em}.tiptap-editor-content h2{font-size:1.5em;font-weight:600;line-height:1.4;margin:1.25em 0 .5em}.tiptap-editor-content h3{font-size:1.25em;font-weight:600;line-height:1.4;margin:1em 0 .5em}.tiptap-editor-content ol,.tiptap-editor-content ul{margin:1em 0;padding-left:1.5em}.tiptap-editor-content li{margin:.5em 0}.tiptap-editor-content blockquote{background:#f8f9fa;border-left:4px solid #2babcf;border-radius:0 6px 6px 0;color:#666;margin:1em 0;padding:1em}.tiptap-editor-content a{color:#2babcf;cursor:pointer;text-decoration:underline}.tiptap-editor-content img{border-radius:6px;display:block;height:auto;margin:1em 0;max-width:100%}.tiptap-editor-content code{background:#f0f0f0;border-radius:3px;font-family:Courier New,monospace;font-size:.9em;padding:.2em .4em}.tiptap-editor-content pre{background:#2d2d2d;border-radius:6px;color:#f8f8f2;margin:1em 0;overflow-x:auto;padding:1em}.tiptap-editor-content pre code{background:none;color:inherit;padding:0}.article-edit-page{padding:20px}.header-top{align-items:center;display:flex;flex-wrap:wrap;gap:15px;justify-content:space-between;margin-bottom:10px}.article-id{background-color:#f8f9fa;border:1px solid #e9ecef;border-radius:20px;color:#6c757d;font-family:Monaco,Consolas,monospace;font-size:.9rem;padding:8px 15px}.edit-container{grid-gap:30px;display:grid;gap:30px;grid-template-columns:2fr 1fr}@media (max-width:992px){.edit-container{grid-template-columns:1fr}}.action-left,.action-right{align-items:center;display:flex;gap:15px}.btn-danger{background-color:#e74c3c}.btn-danger:hover:not(:disabled){background-color:#c0392b;box-shadow:0 4px 8px #e74c3c4d;transform:translateY(-2px)}.article-info{border-top:1px solid #eee;margin-top:25px;padding-top:20px}.article-info h4{color:#333;font-size:1.1rem;margin-bottom:15px}.info-item{border-bottom:1px solid #f0f0f0;display:flex;justify-content:space-between;padding:8px 0}.info-item:last-child{border-bottom:none}.info-label{color:#666}.info-value{color:#333;font-weight:500}.loading p{color:#666;font-size:1.1rem}.tiptap-toolbar{align-items:center;background:#f8f9fa;display:flex;flex-wrap:wrap;gap:4px;padding:10px}.tiptap-toolbar,.tiptap-toolbar:first-child{border-bottom:1px solid #e0e0e0}.tiptap-toolbar:last-child{border-top:1px solid #e0e0e0}.toolbar-group{align-items:center;display:flex;gap:4px}.toolbar-btn{align-items:center;background:#fff;border:1px solid #ddd;border-radius:4px;cursor:pointer;display:inline-flex;font-size:14px;font-weight:500;height:32px;justify-content:center;min-width:36px;padding:0 10px;transition:all .2s ease;white-space:nowrap}.toolbar-btn:hover:not(:disabled){background:#f0f0f0;border-color:#2babcf;transform:translateY(-1px)}.toolbar-btn.active{background:#2babcf;border-color:#2babcf;color:#fff}.toolbar-btn:disabled{cursor:not-allowed;opacity:.5;transform:none!important}.toolbar-select{background:#fff;border:1px solid #ddd;border-radius:4px;cursor:pointer;font-size:14px;height:32px;min-width:80px;padding:0 8px}.toolbar-select:focus{border-color:#2babcf;box-shadow:0 0 0 2px #2babcf33;outline:none}.toolbar-divider{background:#ddd;height:24px;margin:0 8px;width:1px}.paste-hint{background-color:#e8f4fd;border-left:4px solid #2babcf;border-radius:0 4px 4px 0;color:#2c3e50;font-size:14px;margin:0;padding:12px 16px}.tiptap-editor-content table{border-collapse:collapse;margin:1em 0;overflow:hidden;width:100%}.tiptap-editor-content table td,.tiptap-editor-content table th{border:1px solid #ddd;min-width:100px;padding:8px 12px;position:relative;vertical-align:top}.tiptap-editor-content table th{background-color:#f8f9fa;font-weight:600;text-align:left}.tiptap-editor-content table td:focus,.tiptap-editor-content table th:focus{outline:2px solid #2babcf;outline-offset:-2px}.tiptap-highlight{border-radius:.2em;padding:.1em .2em}.tiptap-link{color:#2babcf;cursor:pointer;text-decoration:underline}.tiptap-link:hover{color:#1a8ba8;text-decoration:none}.tiptap-image{border-radius:6px;display:block;height:auto;margin:1em 0;max-width:100%}.tiptap-image.ProseMirror-selectednode{outline:3px solid #2babcf}@media (max-width:768px){.tiptap-toolbar{align-items:stretch;flex-direction:column}.toolbar-group{flex-wrap:wrap;justify-content:center}.toolbar-divider{display:none}.toolbar-select{flex:1 1;min-width:auto}}.admin-page{background:#f5f7fa}.admin-page,.admin-sidebar{display:flex;min-height:100vh}.admin-sidebar{background:linear-gradient(180deg,#1a1a2e,#16213e);box-shadow:4px 0 20px #0000001a;flex-direction:column;left:0;position:fixed;top:0;width:260px;z-index:100}.sidebar-header{border-bottom:1px solid #ffffff1a;padding:30px 25px}.sidebar-title{color:#fff;font-size:22px;margin:0}.sidebar-nav{display:flex;flex:1 1;flex-direction:column;gap:4px;padding:20px 0}.nav-link{align-items:center;border-left:3px solid #0000;color:#ffffffb3;display:flex;font-size:15px;font-weight:500;gap:14px;padding:14px 25px;position:relative;text-decoration:none;transition:all .3s ease}.nav-link:hover{background:#ffffff14}.nav-link.active,.nav-link:hover{border-left-color:#2babcf;color:#fff}.nav-link.active{background:#2babcf33}.nav-link.active:before{background:#2babcf;bottom:0;content:"";left:0;position:absolute;top:0;width:3px}.nav-icon{font-size:18px;text-align:center;width:24px}.nav-text{flex:1 1}.sidebar-footer{border-top:1px solid #ffffff1a;padding:20px 25px}.back-link{color:#ffffffb3;display:flex;gap:8px;transition:color .3s ease}.back-link:hover{color:#fff}.admin-content{background:#f5f7fa;flex:1 1;margin-left:260px;min-height:100vh;padding:30px}.content-header{align-items:center;display:flex;justify-content:flex-end;margin-bottom:30px}.header-actions{display:flex;gap:10px}.content-body{background:#fff;border-radius:16px;box-shadow:0 2px 12px #0000000f;padding:35px}.dashboard{padding:0}.dashboard-header{border-bottom:2px solid #f0f0f0;margin-bottom:35px;padding-bottom:25px}.dashboard-title{color:#1a1a2e;font-size:28px;font-weight:700;margin-bottom:8px}.dashboard-subtitle{color:#666;font-size:15px;margin:0}.stats-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(4,1fr);margin-bottom:40px}.stat-card{align-items:center;background:#fff;border:1px solid #e8e8e8;border-radius:16px;box-shadow:0 2px 8px #0000000a;display:flex;gap:18px;padding:28px;transition:all .3s ease}.stat-card:hover{border-color:#2babcf;box-shadow:0 8px 24px #0000001a;transform:translateY(-4px)}.stat-icon{align-items:center;background:linear-gradient(135deg,#2babcf,#1a8ba8);border-radius:14px;color:#fff;display:flex;flex-shrink:0;font-size:32px;height:64px;justify-content:center;width:64px}.stat-content{flex:1 1}.stat-title{color:#888;font-size:14px;font-weight:500;margin-bottom:6px}.stat-value{color:#1a1a2e;font-size:32px;font-weight:700;line-height:1.2;margin:0}.quick-actions{margin-bottom:40px}.section-title{border-bottom:2px solid #f0f0f0;color:#1a1a2e;font-size:20px;font-weight:600;margin-bottom:20px;padding-bottom:12px}.actions-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(4,1fr)}.action-card{align-items:center;background:linear-gradient(135deg,#f8f9fa,#fff);border:2px solid #0000;border-radius:16px;box-shadow:0 2px 8px #0000000a;color:#1a1a2e;display:flex;flex-direction:column;font-weight:600;gap:14px;padding:35px 25px;text-decoration:none;transition:all .3s ease}.action-card:hover{background:#fff;border-color:#2babcf;box-shadow:0 8px 24px #2babcf26;transform:translateY(-4px)}.action-icon{font-size:44px}.action-text{color:#333;font-size:15px}.recent-activity{background:#f8f9fa;border-radius:16px;padding:30px}.activity-list{display:flex;flex-direction:column;gap:16px}.activity-item{background:#fff;border-radius:12px;box-shadow:0 2px 6px #0000000a;gap:16px;padding:16px}.activity-icon,.activity-item{align-items:center;display:flex}.activity-icon{background:#2babcf;border-radius:10px;color:#fff;flex-shrink:0;font-size:24px;height:44px;justify-content:center;width:44px}.activity-content{flex:1 1}.activity-text{color:#333;font-size:15px;font-weight:500;margin:0 0 4px}.activity-time{color:#888;font-size:13px}.article-management{padding:0}.management-header{align-items:center;border-bottom:2px solid #f0f0f0;display:flex;justify-content:space-between;margin-bottom:28px;padding-bottom:20px}.management-title{color:#1a1a2e;font-size:24px;font-weight:700;margin:0}.management-actions{display:flex;gap:12px}.management-filters{margin-bottom:24px}.filter-group{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.filter-input,.filter-select{background:#fff;border:2px solid #e8e8e8;border-radius:10px;font-family:inherit;font-size:14px;padding:10px 16px;transition:all .3s ease}.filter-input:focus,.filter-select:focus{border-color:#2babcf;box-shadow:0 0 0 3px #2babcf1a;outline:none}.filter-select{min-width:150px}.filter-input{min-width:250px}.management-table{background:#fff;border:1px solid #e8e8e8;border-radius:12px;box-shadow:0 2px 8px #0000000a;overflow:hidden}.table{border-collapse:collapse;width:100%}.table thead{background:linear-gradient(135deg,#f8f9fa,#f0f0f0)}.table th{border-bottom:2px solid #e8e8e8;color:#1a1a2e;font-weight:600;letter-spacing:.5px;text-align:left;text-transform:uppercase}.table td,.table th{font-size:14px;padding:16px 18px}.table td{border-bottom:1px solid #f0f0f0;color:#333}.table tbody tr{transition:background .2s ease}.table tbody tr:hover{background:#f8f9fa}.article-link{color:#2babcf;font-weight:500;text-decoration:none;transition:color .2s ease}.article-link:hover{color:#1a8ba8;text-decoration:underline}.category-badge{background:#2babcf;color:#fff}.category-badge,.status-badge{border-radius:20px;display:inline-block;font-size:12px;font-weight:600;padding:5px 12px}.status-badge.published{background:#d4edda;color:#155724}.status-badge.draft{background:#fff3cd;color:#856404}.action-buttons{display:flex;gap:8px}.btn-sm{border-radius:6px;font-size:13px;font-weight:500;padding:6px 14px}.btn-danger{background:#e74c3c;border-color:#e74c3c;color:#fff}.btn-danger:hover{background:#c0392b;border-color:#c0392b}.pagination{align-items:center;background:#fff;border:1px solid #e8e8e8;border-radius:12px;display:flex;gap:20px;justify-content:center;margin-top:30px;padding:20px}.pagination-btn{background:#fff;border:2px solid #e8e8e8;border-radius:8px;color:#333;cursor:pointer;font-family:inherit;font-size:14px;font-weight:500;padding:10px 20px;transition:all .3s ease}.pagination-btn:hover:not(:disabled){background:#2babcf0d;border-color:#2babcf;color:#2babcf}.pagination-btn:disabled{cursor:not-allowed;opacity:.5}.pagination-info{color:#666;font-size:14px;font-weight:500}.user-management{padding:0}.role-badge{border-radius:20px;display:inline-block;font-size:12px;font-weight:600;padding:5px 12px}.role-badge.admin{background:#e74c3c;color:#fff}.role-badge.operator{background:#f39c12;color:#fff}.status-badge.active{background:#d4edda;color:#155724}.status-badge.inactive{background:#f8d7da;color:#721c24}.btn{align-items:center;border:2px solid #0000;border-radius:10px;cursor:pointer;display:inline-flex;font-family:inherit;font-size:14px;font-weight:600;gap:8px;justify-content:center;padding:10px 24px;text-decoration:none;transition:all .3s ease}.btn-primary{background:linear-gradient(135deg,#2babcf,#1a8ba8);border-color:#2babcf;color:#fff}.btn-primary:hover{box-shadow:0 6px 20px #2babcf59;transform:translateY(-2px)}.btn-secondary{background:#fff;border-color:#e8e8e8;color:#333}.btn-secondary:hover{background:#2babcf0d;border-color:#2babcf;color:#2babcf}.btn:disabled{box-shadow:none!important;cursor:not-allowed;opacity:.6;transform:none!important}.loading{flex-direction:column;gap:20px;min-height:300px}.loading-spinner{border:4px solid #f0f0f0;border-top-color:#2babcf}.permission-denied{background:#fff3cd;border:2px solid #ffc107;border-radius:16px;padding:60px 40px;text-align:center}.permission-denied h3{color:#856404;font-size:24px;margin-bottom:10px}.permission-denied p{color:#856404;font-size:15px}@media (max-width:1200px){.actions-grid,.stats-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:992px){.admin-sidebar{width:220px}.admin-content{margin-left:220px}}@media (max-width:768px){.admin-sidebar{min-height:auto;position:relative;width:100%}.admin-page{flex-direction:column}.admin-content{margin-left:0;padding:20px}.sidebar-nav{flex-direction:row;flex-wrap:wrap;padding:10px}.nav-link{flex:1 1;justify-content:center;min-width:140px;padding:12px 16px}.content-body{border-radius:12px;padding:20px}.actions-grid,.stats-grid{grid-template-columns:1fr}.management-header{align-items:flex-start;flex-direction:column;gap:15px}.management-table{overflow-x:auto}.table{min-width:800px}.pagination{flex-direction:column;gap:12px}}.article-detail-page{background:var(--bg-primary);margin:0 auto;max-width:1160px;min-height:100vh;padding:40px 20px}.breadcrumb{align-items:center;border-bottom:1px solid var(--border-light);color:var(--text-secondary);display:flex;font-size:14px;gap:10px;margin-bottom:30px;padding:15px 0}.breadcrumb-item{color:var(--text-secondary);text-decoration:none;transition:color var(--transition-fast)}.breadcrumb-item:hover{color:var(--primary-color)}.breadcrumb-item.current{color:var(--text-primary);font-weight:500}.breadcrumb-separator{color:var(--text-muted)}.article-header{border-bottom:2px solid var(--border-light);margin-bottom:0;padding-bottom:30px}.article-meta{align-items:center;display:flex;flex-wrap:wrap;gap:20px;margin-bottom:20px}.article-category{background:var(--primary-color);border-radius:4px;color:#fff;display:inline-block;font-size:13px;font-weight:500;letter-spacing:1px;padding:6px 16px}.article-date,.article-views{align-items:center;color:var(--text-secondary);display:flex;font-size:14px;gap:5px}.article-title{color:var(--text-primary);font-size:24px;font-weight:700;letter-spacing:1px;line-height:1.4;margin-bottom:20px}.article-author{align-items:center;color:var(--text-secondary);display:flex;flex-wrap:wrap;font-size:14px;gap:10px}.author-label{color:var(--text-muted)}.author-name{color:var(--primary-color);font-weight:500}.separator{color:var(--border-color)}.article-source{color:var(--text-secondary)}.article-content{margin-bottom:40px}.content-body{color:var(--text-primary);font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Hiragino Sans GB,Microsoft YaHei,微软雅黑,Arial,sans-serif;font-size:17px;letter-spacing:.02em;line-height:2;text-align:justify;word-spacing:.05em}.content-body p{margin-bottom:24px;text-align:justify;text-indent:2em}.content-body h1{border-bottom:2px solid var(--primary-color);color:var(--text-primary);font-size:28px;font-weight:700;line-height:1.5;margin:40px 0 24px;padding-bottom:12px}.content-body h2{border-left:4px solid var(--primary-color);font-size:24px;margin:36px 0 20px;padding-left:16px}.content-body h2,.content-body h3{color:var(--text-primary);font-weight:600;line-height:1.5}.content-body h3{font-size:20px;margin:30px 0 16px}.content-body h4{color:var(--text-primary);font-size:18px;font-weight:600;line-height:1.5;margin:24px 0 14px}.content-body ol,.content-body ul{margin:20px 0;padding-left:2em}.content-body li{line-height:1.8;margin:12px 0}.content-body ul li{list-style-type:disc}.content-body ol li{list-style-type:decimal}.content-body img{border-radius:8px;box-shadow:0 2px 12px #0000001a;display:block;height:auto;margin:24px auto;max-width:100%}.content-body blockquote{background:linear-gradient(to right,var(--bg-secondary),#fff);border-left:4px solid var(--primary-color);border-radius:0 8px 8px 0;color:var(--text-secondary);font-style:italic;margin:24px 0;padding:20px 24px}.content-body blockquote p{margin-bottom:0;text-indent:0}.content-body a{border-bottom:1px solid #0000;text-decoration:none;transition:all var(--transition-fast)}.content-body a:hover{border-bottom-color:var(--primary-color);color:var(--primary-dark)}.content-body table{border-collapse:collapse;font-size:15px;margin:24px 0;width:100%}.content-body td,.content-body th{border:1px solid var(--border-color);padding:14px 16px;text-align:left}.content-body th{background:linear-gradient(to bottom,var(--bg-secondary),#f0f0f0);color:var(--text-primary);font-weight:600}.content-body tr:nth-child(2n){background:var(--bg-secondary)}.content-body tr:hover{background:#2ecc710d}.content-body b,.content-body strong{color:var(--text-primary);font-weight:600}.content-body em,.content-body i{font-style:italic}.content-body hr{background:linear-gradient(to right,#0000,var(--border-color),#0000);border:none;height:1px;margin:32px 0}.content-body code{background:var(--bg-secondary);border-radius:4px;color:#e74c3c;font-family:Courier New,monospace;font-size:.9em;padding:2px 8px}.content-body pre{background:#2d2d2d;border-radius:8px;color:#f8f8f2;margin:24px 0;overflow-x:auto;padding:20px}.content-body pre code{background:none;color:inherit;padding:0}.article-tags{align-items:center;border-top:1px solid var(--border-light);display:flex;flex-wrap:wrap;gap:10px;margin-top:30px;padding-top:20px}.tags-label{color:var(--text-primary);font-weight:500}.tag{background:var(--bg-secondary);border-radius:4px;color:var(--text-secondary);display:inline-block;font-size:13px;padding:4px 12px;transition:all var(--transition-fast)}.tag:hover{background:var(--primary-color);color:#fff}.article-attachments{background:var(--bg-secondary);border-left:4px solid var(--primary-color);border-radius:8px;margin-bottom:40px;padding:25px}.attachments-title{color:var(--text-primary);font-size:18px;font-weight:600;margin-bottom:20px}.attachments-list{display:flex;flex-direction:column;gap:12px}.attachment-item{align-items:center;background:#fff;border:1px solid var(--border-light);border-radius:6px;color:var(--text-primary);display:flex;gap:12px;padding:15px 20px;text-decoration:none;transition:all var(--transition-fast)}.attachment-item:hover{border-color:var(--primary-color);box-shadow:var(--shadow-sm);transform:translateX(5px)}.attachment-icon{font-size:24px}.attachment-name{flex:1 1;font-weight:500}.attachment-size{color:var(--text-muted);font-size:13px}.article-actions{display:flex;flex-wrap:wrap;gap:15px;margin-bottom:50px}.action-button{align-items:center;background:#fff;border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);cursor:pointer;display:inline-flex;font-family:inherit;font-size:14px;gap:8px;padding:12px 24px;text-decoration:none;transition:all var(--transition-fast)}.action-button:hover{border-color:var(--primary-color);box-shadow:var(--shadow-sm);color:var(--primary-color);transform:translateY(-2px)}.related-articles{background:var(--bg-secondary);border-radius:8px;margin-bottom:50px;padding:30px}.related-title{border-bottom:2px solid var(--primary-color);color:var(--text-primary);font-size:22px;font-weight:600;margin-bottom:25px;padding-bottom:15px}.related-grid{grid-gap:25px;display:grid;gap:25px;grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}.related-card{background:#fff;border:1px solid var(--border-light);border-radius:8px;box-shadow:var(--shadow-sm);padding:20px;transition:all var(--transition-normal)}.related-card:hover{border-color:var(--primary-color);box-shadow:var(--shadow-md);transform:translateY(-5px)}.related-header{align-items:center;display:flex;flex-wrap:wrap;gap:12px;margin-bottom:15px}.related-category{background:var(--primary-color);border-radius:4px;color:#fff;display:inline-block;font-size:12px;padding:4px 12px}.related-date{color:var(--text-muted);font-size:13px}.related-article-title{font-size:16px;font-weight:600;line-height:1.4;margin-bottom:12px}.related-article-title a{color:var(--text-primary);text-decoration:none;transition:color var(--transition-fast)}.related-article-title a:hover{color:var(--primary-color)}.related-excerpt{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:var(--text-secondary);display:-webkit-box;font-size:14px;line-height:1.6;margin-bottom:15px;overflow:hidden}.related-footer{align-items:center;border-top:1px solid var(--border-light);color:var(--text-muted);display:flex;font-size:13px;justify-content:space-between;padding-top:15px}.related-author,.related-views{align-items:center;display:flex;gap:5px}.article-navigation{display:flex;flex-wrap:wrap;gap:20px;justify-content:space-between;margin-bottom:40px}.nav-button{align-items:center;background:#fff;border:2px solid var(--border-color);border-radius:6px;color:var(--text-primary);cursor:pointer;display:inline-flex;flex:1 1;font-family:inherit;font-size:15px;font-weight:500;gap:8px;justify-content:center;min-width:180px;padding:14px 24px;text-decoration:none;transition:all var(--transition-normal)}.nav-button:hover{box-shadow:var(--shadow-sm);transform:translateY(-2px)}.nav-button.list,.nav-button:hover{border-color:var(--primary-color);color:var(--primary-color)}.nav-button.home,.nav-button.list:hover{background:var(--primary-color);color:#fff}.nav-button.home{border-color:var(--primary-color)}.nav-button.home:hover{background:var(--primary-dark);border-color:var(--primary-dark)}.copyright-notice{background:var(--bg-secondary);border-radius:8px;border-top:3px solid var(--primary-color);padding:30px}.copyright-notice p{color:var(--text-secondary);font-size:14px;line-height:1.8;margin-bottom:10px}.copyright-notice p:last-child{margin-bottom:0}.copyright-notice strong{color:var(--text-primary);font-weight:600}.loading{align-items:center;display:flex;justify-content:center;min-height:400px}.loading-spinner{border:4px solid #f3f3f3;border-top:4px solid var(--primary-color);height:50px;width:50px}.error-container{align-items:center;display:flex;justify-content:center;min-height:60vh;padding:40px 20px}.error-content{background:#fff;border-radius:8px;box-shadow:var(--shadow-md);max-width:500px;padding:40px;text-align:center}.error-title{color:#e74c3c;font-size:24px;font-weight:700;margin-bottom:15px}.error-message{color:var(--text-secondary);font-size:16px;line-height:1.6;margin-bottom:30px}.error-actions{display:flex;flex-wrap:wrap;gap:15px;justify-content:center}.error-actions .btn{padding:12px 28px}@media (max-width:992px){.article-detail-page{padding:30px 20px}.article-title{font-size:28px}.related-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.article-detail-page{padding:20px 15px}.article-meta{gap:12px}.article-title{font-size:24px}.article-actions{flex-direction:column}.action-button{justify-content:center;width:100%}.related-grid{grid-template-columns:1fr}.article-navigation{flex-direction:column}.nav-button{width:100%}.copyright-notice{padding:20px}}@media (max-width:480px){.article-title{font-size:20px}.content-body{font-size:15px}.article-attachments,.related-articles{padding:20px}}.login-page{align-items:center;background:linear-gradient(135deg,#f5f7fa,#e8eef5);display:flex;justify-content:center;min-height:100vh;padding:40px 20px}.login-container{background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000001a;display:grid;grid-template-columns:1.1fr .9fr;max-width:1000px;overflow:hidden;width:100%}.login-card{display:flex;flex-direction:column;padding:50px 45px}.login-header{margin-bottom:35px;text-align:center}.login-title{color:var(--text-primary);font-size:32px;font-weight:700;letter-spacing:1px;margin-bottom:10px}.login-subtitle{color:var(--text-secondary);font-size:15px;margin:0}.error-message{background:linear-gradient(135deg,#fef2f2,#fee2e2);border:1px solid #fecaca;border-radius:8px;color:#dc2626;font-size:14px;line-height:1.5;margin-bottom:25px;padding:14px 18px}.login-form{gap:20px}.form-group,.login-form{display:flex;flex-direction:column}.form-group{gap:8px}.form-label{color:var(--text-primary);font-size:14px;font-weight:500}.form-control{background:#f9f9f9;border:2px solid var(--border-color);border-radius:8px;font-family:inherit;font-size:15px;padding:14px 16px;transition:all var(--transition-fast);width:100%}.form-control:focus{border-color:var(--primary-color);box-shadow:0 0 0 3px #2babcf1a;outline:none}.form-control::placeholder{color:var(--text-muted)}.form-control:disabled{background:var(--bg-secondary);cursor:not-allowed;opacity:.6}.form-options{justify-content:space-between;margin-top:5px}.checkbox-label,.form-options{align-items:center;display:flex}.checkbox-label{color:var(--text-secondary);cursor:pointer;font-size:14px;gap:8px}.checkbox-label input[type=checkbox]{accent-color:var(--primary-color);cursor:pointer;height:18px;width:18px}.checkbox-text{-webkit-user-select:none;user-select:none}.forgot-password{color:var(--primary-color);font-size:14px;font-weight:500;text-decoration:none;transition:color var(--transition-fast)}.forgot-password:hover{color:var(--primary-dark);text-decoration:underline}.btn-block{font-size:16px;font-weight:600;margin-top:10px;padding:14px 24px;width:100%}.btn-block:disabled{cursor:not-allowed;opacity:.6}.login-footer{border-top:1px solid var(--border-light);margin-top:40px;padding-top:30px}.footer-text{color:var(--text-muted);font-size:13px;margin-bottom:15px;text-align:center}.default-accounts{display:flex;gap:15px;margin-bottom:20px}.account-info{background:var(--bg-secondary);border-radius:8px;display:flex;flex:1 1;flex-direction:column;font-size:13px;gap:5px;padding:15px}.account-info strong{color:var(--text-primary);font-size:14px;font-weight:600}.account-info span,.register-link{color:var(--text-secondary)}.register-link{font-size:14px;margin-bottom:20px;text-align:center}.register-link a{color:var(--primary-color);font-weight:500;text-decoration:none;transition:color var(--transition-fast)}.register-link a:hover{color:var(--primary-dark);text-decoration:underline}.back-home{text-align:center}.back-link{align-items:center;color:var(--text-secondary);display:inline-flex;font-size:14px;font-weight:500;gap:5px;text-decoration:none;transition:all var(--transition-fast)}.back-link:hover{color:var(--primary-color);padding-left:5px}.login-sidebar{align-items:center;background:linear-gradient(135deg,var(--primary-color) 0,var(--primary-dark) 100%);display:flex;justify-content:center;padding:50px 40px}.sidebar-content{color:#fff;text-align:center}.sidebar-title{font-size:32px;font-weight:700;letter-spacing:1px;margin-bottom:15px}.sidebar-description{font-size:15px;line-height:1.6;margin-bottom:40px;opacity:.9}.sidebar-features{display:flex;flex-direction:column;gap:20px}.feature{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border-radius:8px;display:flex;gap:12px;justify-content:center;padding:15px}.feature-icon{font-size:24px}.feature-text{font-size:15px;font-weight:500}.already-logged-in{padding:30px;text-align:center}.already-logged-in p{color:var(--text-secondary);font-size:15px;line-height:1.6;margin-bottom:15px}.already-logged-in strong{color:var(--primary-color);font-weight:600}.loading-spinner{animation:spin 1s linear infinite;border:3px solid #f3f3f3;border-radius:50%;border-top:3px solid var(--primary-color);height:40px;margin:20px auto 0;width:40px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@media (max-width:992px){.login-page{padding:30px 20px}.login-container{grid-template-columns:1fr;max-width:500px}.login-sidebar{display:none}.login-card{padding:40px 30px}}@media (max-width:768px){.login-page{padding:20px 15px}.login-card{padding:30px 20px}.login-title{font-size:28px}.default-accounts,.form-options{flex-direction:column}.form-options{align-items:flex-start;gap:15px}}@media (max-width:480px){.login-title,.sidebar-title{font-size:24px}}
/*# sourceMappingURL=main.cfc880d6.css.map*/