.sidebar-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;z-index:199}.sidebar-chevron{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;flex-shrink:0;color:#ffffff59;transition:transform .3s cubic-bezier(.4,0,.2,1),color .2s;margin-left:auto}.sidebar-chevron.expanded{transform:rotate(180deg);color:#fffc}.sidebar-item>a:hover .sidebar-chevron{color:#fffc}.cat-icon{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;flex-shrink:0;font-style:normal}.cat-icon svg{width:16px;height:16px}:root{--primary-color: #2475d3;--primary-hover: #1e73be;--accent-color: #f1404b;--sidebar-bg: #1e2128;--sidebar-text: #ffffffb3;--sidebar-active: #ffffff;--sidebar-width: 192px;--sidebar-collapsed-width: 64px;--header-height: 56px;--body-bg: #f9f9f9;--card-bg: #ffffff;--card-border: #e8e8ed;--card-hover-border: #f1404b;--text-color: #4c4c4c;--text-muted: #999;--text-sm: 14px;--text-xs: 13px;--border-radius: 8px;--border-radius-xl: 12px}.dark-mode{--body-bg: #22272e;--card-bg: #2d333b;--card-border: #444c56;--text-color: #cdd9e5;--text-muted: #768390}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:15px;scroll-behavior:smooth}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,PingFang SC,Microsoft YaHei,sans-serif;background:var(--body-bg);color:var(--text-color);line-height:1.5;overflow-x:hidden}a{text-decoration:none;color:var(--text-color);transition:color .2s}a:hover{color:var(--accent-color)}img{max-width:100%;vertical-align:middle}ul{list-style:none}button{cursor:pointer;border:none;background:none;font-family:inherit}.app-layout{display:flex;min-height:100vh}.sidebar{width:var(--sidebar-width);background:var(--sidebar-bg);position:fixed;top:0;left:0;bottom:0;z-index:200;display:flex;flex-direction:column;transition:width .3s;overflow:hidden}.sidebar.collapsed{width:var(--sidebar-collapsed-width)}.sidebar.collapsed .sidebar-logo .logo-text,.sidebar.collapsed .sidebar-menu span,.sidebar.collapsed .sidebar-menu .sub-menu,.sidebar.collapsed .sidebar-menu .sidebar-arrow{display:none}.sidebar-logo{padding:14px 16px;border-bottom:1px solid rgba(255,255,255,.08);display:flex;align-items:center;gap:8px;flex-shrink:0}.sidebar-logo img{height:28px;width:28px}.sidebar-logo .logo-text{color:#fff;font-size:15px;font-weight:700;white-space:nowrap}.sidebar-menu{flex:1;overflow-y:auto;padding:6px 0}.sidebar-menu::-webkit-scrollbar{width:4px}.sidebar-menu::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:2px}.sidebar-menu .sidebar-item>a{display:flex;align-items:center;padding:8px 14px;color:var(--sidebar-text);font-size:14px;transition:all .2s;gap:10px;position:relative;border-left:3px solid transparent}.sidebar-menu .sidebar-item>a i{font-size:16px;width:20px;text-align:center;flex-shrink:0}.sidebar-menu .sidebar-item>a span{flex:1;line-height:1.4}.sidebar-menu .sidebar-item>a:hover{color:var(--sidebar-active);background:#ffffff0f}.sidebar-menu .sidebar-item>a.active{color:#fff;border-left-color:var(--primary-color);background:#ffffff14;font-weight:500}.sidebar-menu .sidebar-item .sidebar-arrow{font-size:10px;color:var(--sidebar-text);transition:transform .2s;cursor:pointer;padding:4px 10px;position:absolute;right:4px;top:50%;transform:translateY(-50%)}.sidebar-menu .sidebar-item .sidebar-arrow.expanded{transform:translateY(-50%) rotate(90deg)}.sidebar-menu .sub-menu{max-height:0;overflow:hidden;padding-left:0;transition:max-height .3s cubic-bezier(.4,0,.2,1)}.sidebar-menu .sub-menu.open{max-height:800px}.sidebar-menu .sub-menu li a{display:block;padding:6px 14px 6px 46px;color:var(--sidebar-text);font-size:14px}.sidebar-menu .sub-menu li a:hover{color:var(--sidebar-active)}.sidebar-menu .sub-menu li a.active{color:var(--primary-color);font-weight:500}.main-wrap{flex:1;margin-left:var(--sidebar-width);display:flex;flex-direction:column;min-height:100vh;transition:margin-left .3s}.main-wrap.sidebar-collapsed{margin-left:var(--sidebar-collapsed-width)}.page-header{position:sticky;top:0;z-index:100;height:var(--header-height);background:var(--card-bg);border-bottom:1px solid var(--card-border);display:flex;align-items:center;padding:0 20px;gap:16px}.page-header .header-toggle{font-size:20px;color:var(--text-muted);cursor:pointer}.page-header .header-toggle:hover{color:var(--text-color)}.page-header .header-nav{display:flex;gap:4px;flex:1;overflow-x:auto;white-space:nowrap}.page-header .header-nav::-webkit-scrollbar{display:none}.page-header .header-nav a{padding:6px 12px;font-size:14px;border-radius:4px;color:var(--text-color)}.page-header .header-nav a:hover{color:var(--primary-color);background:#2475d30f}.page-header .header-nav a.router-link-exact-active{color:var(--primary-color)}.page-header .header-search{flex:1;max-width:360px;position:relative}.page-header .header-search input{width:100%;padding:7px 36px 7px 14px;border:1px solid var(--primary-color);border-radius:20px;background:var(--body-bg);font-size:14px;color:var(--text-color);outline:none;transition:border-color .2s,box-shadow .2s}.page-header .header-search input:focus{border-color:var(--primary-color);box-shadow:0 0 0 2px #2475d326}.page-header .header-search input::placeholder{color:var(--text-muted)}.page-header .header-search .search-icon{position:absolute;right:12px;top:50%;transform:translateY(-50%);color:var(--text-muted);cursor:pointer;font-size:15px}.page-header .header-right{margin-left:auto;display:flex;align-items:center;gap:12px}.page-header .header-user{display:flex;align-items:center;gap:8px;cursor:pointer;position:relative;padding:4px 8px;border-radius:4px;font-size:13px;color:var(--text-color)}.page-header .header-user:hover{background:#0000000a}.page-header .header-user .avatar{width:28px;height:28px;border-radius:50%;background:var(--primary-color);color:#fff;display:flex;align-items:center;justify-content:center;font-size:12px}.page-header .header-user .user-dropdown{position:absolute;top:100%;right:0;margin-top:4px;background:var(--card-bg);border:1px solid var(--card-border);border-radius:6px;box-shadow:0 4px 12px #0000001a;min-width:130px;z-index:50}.page-header .header-user .user-dropdown a{display:block;padding:8px 14px;font-size:13px}.page-header .header-user .user-dropdown a:hover{background:#0000000a}.page-header .btn-login{padding:5px 16px;border-radius:20px;font-size:13px;color:var(--primary-color);border:1px solid var(--primary-color)}.page-header .btn-login:hover{background:var(--primary-color);color:#fff}.content-area{flex:1;padding:20px}.content-area .container-fluid{max-width:1600px;margin:0 auto}.section-block{margin-bottom:28px}.section-title{font-size:20px;font-weight:600;color:var(--text-color);padding:14px 0 10px;display:flex;align-items:center;gap:8px}.section-title .title-icon{font-size:20px;color:var(--primary-color)}.section-title .title-more{margin-left:auto;font-size:12px;color:var(--text-muted);font-weight:400;background:none;border:none;cursor:pointer;padding:2px 4px;font-family:inherit}.section-title .title-more:hover{color:var(--primary-color)}.tab-menu{display:flex;flex-wrap:wrap;align-items:center;gap:0;border-bottom:1px solid var(--card-border);margin-bottom:16px;padding:0}.tab-menu .tab-item{padding:8px 16px;font-size:14px;color:var(--text-muted);cursor:pointer;border-bottom:2px solid transparent;transition:all .2s;white-space:nowrap}.tab-menu .tab-item:hover{color:var(--text-color)}.tab-menu .tab-item.active{color:var(--primary-color);border-bottom-color:var(--primary-color);font-weight:500}.tab-menu .tab-more-btn{margin-left:auto;font-size:12px;color:var(--primary-color);font-weight:400;background:none;border:none;cursor:pointer;padding:8px 12px;font-family:inherit;white-space:nowrap}.tab-menu .tab-more-btn:hover{color:var(--primary-hover);text-decoration:underline}.url-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));grid-auto-rows:76px;gap:10px 8px;padding:0}.url-grid.grid-5col{grid-template-columns:repeat(5,minmax(0,1fr))}.url-grid.grid-4col{grid-template-columns:repeat(4,minmax(0,1fr))}.url-card{min-width:0;height:76px}.url-card .url-body{height:76px}.url-card .card{display:flex;align-items:center;padding:0 12px;background:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--border-radius);transition:border-color .25s,box-shadow .25s,transform .25s;color:var(--text-color);height:100%;overflow:hidden;width:100%}.url-card .card:hover{border-color:var(--card-hover-border);box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.url-card .card:hover .url-title{color:var(--accent-color)}.url-card .url-img{width:40px;height:40px;border-radius:8px;overflow:hidden;flex-shrink:0;margin-right:10px;background:#f0f0f5}.url-card .url-img img{width:40px;height:40px;object-fit:cover;display:block}.url-card .url-info{flex:1;min-width:0;overflow:hidden}.url-card .url-title{font-size:14px;font-weight:600;color:var(--text-color);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.4;margin-bottom:2px;transition:color .2s}.url-card .url-desc{font-size:12px;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.3}.posts-nav{display:flex;justify-content:center;align-items:center;gap:4px;padding:20px 0}.posts-nav .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:34px;height:34px;padding:0 10px;border-radius:6px;font-size:13px;color:var(--text-color);background:var(--card-bg);border:1px solid var(--card-border);cursor:pointer;transition:all .2s}.posts-nav .page-numbers:hover{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}.posts-nav .page-numbers.current{background:var(--primary-color);color:#fff;border-color:var(--primary-color);box-shadow:0 5px 20px -3px #2475d399}.posts-nav .page-numbers.dots{border:none;background:none;cursor:default}.posts-nav .page-numbers.dots:hover{background:none;color:var(--text-color)}.site-footer{background:var(--card-bg);border-top:1px solid var(--card-border);padding:20px;text-align:center;font-size:13px;color:var(--text-muted)}.site-footer a{color:var(--text-muted);margin:0 8px}.site-footer a:hover{color:var(--primary-color)}.form-group{margin-bottom:16px}.form-group label{display:block;margin-bottom:6px;font-size:13px;font-weight:500}.form-group input,.form-group textarea,.form-group select{width:100%;padding:8px 12px;border:1px solid var(--card-border);border-radius:6px;background:var(--card-bg);color:var(--text-color);font-size:13px;outline:none}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{border-color:var(--primary-color)}.form-group .error{color:#e53e3e;font-size:12px;margin-top:4px}.btn{display:inline-flex;align-items:center;justify-content:center;padding:8px 22px;border-radius:20px;font-size:13px;font-weight:500;border:none;cursor:pointer;transition:all .2s}.btn-primary{background:var(--primary-color);color:#fff}.btn-primary:hover{background:var(--primary-hover);box-shadow:0 4px 12px #2475d366}.btn-outline{background:transparent;color:var(--primary-color);border:1px solid var(--primary-color)}.btn-outline:hover{background:var(--primary-color);color:#fff}.loading{display:flex;justify-content:center;padding:60px 0;color:var(--text-muted)}.spinner{width:28px;height:28px;border:3px solid var(--card-border);border-top-color:var(--primary-color);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.empty-state{text-align:center;padding:60px 0;color:var(--text-muted);font-size:14px}@media (max-width: 1400px){.url-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.url-grid.grid-5col,.url-grid.grid-4col{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (max-width: 1200px){.url-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.url-grid.grid-5col,.url-grid.grid-4col{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width: 1100px){.url-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width: 768px){.sidebar{transform:translate(-100%)}.sidebar.mobile-open{transform:translate(0)}.main-wrap{margin-left:0!important}.url-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.page-header .header-nav{display:none}}@media (max-width: 480px){.url-grid{grid-template-columns:minmax(0,1fr)}}
