*{margin:0;padding:0;box-sizing:border-box}body{font-family:'Microsoft YaHei','PingFang SC',sans-serif;background-color:#f5f7fa;color:#333;line-height:1.6;font-size:14px}.bodydiv{max-width:1200px;margin:0 auto;padding:20px;min-height:100vh;display:flex;flex-direction:column}.demo-mode-notice{background:linear-gradient(135deg,#ff9800 0%,#e68900 100%)!important;color:#fff!important;padding:15px 20px!important;border-radius:8px!important;margin-bottom:20px!important;text-align:center!important;font-weight:700!important;font-size:16px!important;box-shadow:0 2px 10px rgba(255,152,0,.3)!important;position:relative!important;overflow:hidden!important;z-index:1000!important;width:100%!important;display:block!important;opacity:1!important}.demo-mode-notice::before{content:''!important;position:absolute!important;top:0!important;left:0!important;width:100%!important;height:100%!important;background:repeating-linear-gradient(45deg,rgba(255,255,255,.1),rgba(255,255,255,.1)10px,rgba(255,255,255,0)10px,rgba(255,255,255,0)20px)!important;animation:shimmer 3s linear infinite!important;z-index:-1!important}@keyframes shimmer{0%{background-position:-200px 0}100%{background-position:200px 0}}.bodydiv>.demo-mode-notice{background:linear-gradient(135deg,#ff9800 0%,#e68900 100%)!important;color:#fff!important}@media (min-width:768px){.demo-mode-notice{background:linear-gradient(135deg,#ff9800 0%,#e68900 100%)!important;color:#fff!important}}.navbar{border-radius:8px;margin-bottom:30px;box-shadow:0 2px 10px rgba(0,0,0,.1);background:linear-gradient(135deg,#3c8dbc 0%,#2980b9 100%);border:none}.navbar-inverse .navbar-brand{color:#fff;font-size:18px;font-weight:700;padding:15px 20px}.navbar-inverse .navbar-nav>li>a{color:#fff;font-size:14px;padding:15px 20px;transition:all .3s ease}.navbar-inverse .navbar-nav>li>a:hover,.navbar-inverse .navbar-nav>li>a:focus{background-color:rgba(255,255,255,.1);color:#fff}.navbar-inverse .navbar-nav>.active>a,.navbar-inverse .navbar-nav>.active>a:hover,.navbar-inverse .navbar-nav>.active>a:focus{background-color:rgba(255,255,255,.2);color:#fff}.navbar-inverse .navbar-toggle{border-color:rgba(255,255,255,.3)}.navbar-inverse .navbar-toggle:hover,.navbar-inverse .navbar-toggle:focus{background-color:rgba(255,255,255,.1)}.navbar-inverse .navbar-toggle .icon-bar{background-color:#fff}.card{background:#fff;border-radius:10px;padding:25px;margin-bottom:20px;box-shadow:0 2px 15px rgba(0,0,0,.05);transition:transform .3s ease,box-shadow .3s ease}.card:hover{transform:translateY(-2px);box-shadow:0 4px 20px rgba(0,0,0,.08)}.card-title{font-size:20px;font-weight:700;color:#2980b9;margin-bottom:20px;text-align:center}.card-header{font-size:20px;font-weight:700;color:#2980b9;margin-bottom:20px;text-align:center;padding-bottom:15px;border-bottom:2px solid #ecf0f5}.info-card{background:linear-gradient(135deg,#ecf0f5 0%,#f5f7fa 100%);border-left:4px solid #3c8dbc}.form-group{margin-bottom:20px}.form-control{border-radius:6px!important;border:1px solid #ddd;padding:12px 15px;font-size:14px;transition:all .3s ease;background-color:#fff}.form-control:focus{border-color:#3c8dbc;box-shadow:0 0 0 2px rgba(60,141,188,.2);outline:none}.btn{border-radius:6px!important;padding:10px 20px;font-size:14px;font-weight:500;transition:all .3s ease;border:none;text-transform:uppercase;letter-spacing:.5px}.btn-primary{background-color:#3c8dbc;color:#fff!important}.btn-primary:hover{background-color:#2980b9;color:#fff!important;transform:translateY(-1px);box-shadow:0 4px 12px rgba(60,141,188,.3)}.btn-danger{background-color:#dc3545;color:#fff!important;font-weight:700;border:1px solid #c82333}.btn-danger:hover{background-color:#c82333;transform:translateY(-1px);box-shadow:0 4px 12px rgba(220,53,69,.4)}.btn-success{background-color:#27ae60;color:#fff}.btn-success:hover{background-color:#219a52;transform:translateY(-1px);box-shadow:0 4px 12px rgba(39,174,96,.3)}.table{width:100%;border-collapse:collapse;background-color:#fff;border-radius:8px;overflow:hidden;box-shadow:0 2px 10px rgba(0,0,0,.05)}.table th,.table td{padding:12px 15px;text-align:left;border-bottom:1px solid #ecf0f5}.table th{background-color:#3c8dbc;color:#fff;font-weight:500}.table tr:last-child td{border-bottom:none}.table tr:hover{background-color:#f8f9fa}.footer{margin-top:auto;padding:20px;text-align:center;color:#666;font-size:12px;border-top:1px solid #ecf0f5;margin-top:40px}@media (max-width:768px){.bodydiv{padding:10px}.navbar{border-radius:6px}.card{padding:15px}.btn{padding:8px 16px;font-size:13px}.table th,.table td{padding:8px 10px;font-size:13px}}.login-container{max-width:400px;margin:100px auto;padding:30px;background:#fff;border-radius:10px;box-shadow:0 4px 20px rgba(0,0,0,.1)}.login-header{text-align:center;margin-bottom:30px;color:#2980b9}.login-header h2{font-size:24px;font-weight:700}.status-message{padding:15px;margin-bottom:20px;border-radius:6px;font-size:14px;font-weight:500}.status-success{background-color:#d4edda;color:#155724;border-left:4px solid #28a745}.status-error{background-color:#f8d7da;color:#721c24;border-left:4px solid #dc3545}.status-info{background-color:#d1ecf1;color:#0c5460;border-left:4px solid #17a2b8}.action-link{color:#3c8dbc;text-decoration:none;transition:color .3s ease;margin:0 5px}.action-link:hover{color:#2980b9;text-decoration:underline}.stats-card{background:linear-gradient(135deg,#3c8dbc 0%,#2980b9 100%);color:#fff;padding:25px;border-radius:10px;text-align:center;margin-bottom:20px;box-shadow:0 4px 15px rgba(60,141,188,.3)}.stats-card .stats-number{font-size:48px;font-weight:700;margin:10px 0}.stats-card .stats-label{font-size:16px;opacity:.9}.pagination{display:flex;justify-content:center;margin-top:30px}.pagination>li>a,.pagination>li>span{border-radius:50%!important;margin:0 5px;width:40px;height:40px;display:flex;align-items:center;justify-content:center;transition:all .3s ease;border:1px solid #ddd;color:#3c8dbc}.pagination>li>a:hover,.pagination>li>span:hover{background-color:#f8f9fa;border-color:#3c8dbc;color:#3c8dbc}.pagination>.active>a,.pagination>.active>span,.pagination>.active>a:hover,.pagination>.active>span:hover{background-color:#3c8dbc;border-color:#3c8dbc;color:#fff}.search-box{margin-bottom:20px}.search-box .form-control{border-radius:6px 0 0 6px!important}.search-box .btn{border-radius:0 6px 6px 0!important}.loading{display:inline-block;width:20px;height:20px;border:3px solid rgba(60,141,188,.3);border-radius:50%;border-top-color:#3c8dbc;animation:spin 1s ease-in-out infinite}@keyframes spin{to{transform:rotate(360deg)}}.tooltip-inner{background-color:#3c8dbc;border-radius:6px;padding:10px 15px;font-size:13px}.shadow-sm{box-shadow:0 2px 5px rgba(0,0,0,.05)}.shadow{box-shadow:0 4px 10px rgba(0,0,0,.1)}.shadow-lg{box-shadow:0 8px 20px rgba(0,0,0,.15)}