/* ================= 企业风主题（仿截图风格） ================= */
:root{
  --ent-primary:#3b82f6;
  --ent-primary-dark:#2563eb;
  --ent-text:#1e293b;
  --ent-text-sub:#64748b;
  --ent-border:#e2e8f0;
  --ent-bg:#f8fafc;
  --ent-radius:12px;
  --ent-shadow:0 2px 8px rgba(15,23,42,.04);
}
*{box-sizing:border-box;}
body{
  margin:0;
  background:var(--ent-bg);
  color:var(--ent-text);
  font-family:"Helvetica Neue",Helvetica,"PingFang SC","Hiragino Sans GB","Microsoft YaHei",微软雅黑,Arial,sans-serif;
  font-size:14px;line-height:1.6;
  -webkit-font-smoothing:antialiased;
}
a{text-decoration:none;color:var(--ent-primary);}
a:hover{text-decoration:none;}

/* ---------------- 顶栏 ---------------- */
.ent-header{
  background:#fff;
  border-bottom:1px solid var(--ent-border);
}
.ent-header-inner{
  padding:12px 16px;
  display:flex;align-items:center;justify-content:space-between;
}
.ent-brand{display:flex;align-items:center;gap:10px;}
.ent-brand-mark{
  width:32px;height:32px;border-radius:8px;
  background:var(--ent-primary);color:#fff;font-size:18px;
  display:flex;align-items:center;justify-content:center;
}
.ent-brand-name{font-size:18px;font-weight:700;color:var(--ent-text);letter-spacing:0.5px;}

/* 右上角「用户中心」 */
.ent-user{
  display:inline-flex;align-items:center;gap:6px;
  height:38px;padding:0 18px;border-radius:8px;
  background:var(--ent-primary);color:#fff !important;
  font-size:14px;font-weight:600;white-space:nowrap;
  transition:background .2s;
}
.ent-user:hover{background:var(--ent-primary-dark);}
.ent-user i{font-size:18px;}

/* ---------------- 二级导航 ---------------- */
.ent-nav-card{
  background:#fff;
  margin:12px 16px;padding:14px 0;
  border-radius:var(--ent-radius);box-shadow:var(--ent-shadow);
  display:flex;justify-content:space-around;
}
.ent-nav-card a{
  display:flex;flex-direction:column;align-items:center;gap:6px;
  color:var(--ent-text-sub);font-size:13px;flex:1;
  transition:color .2s;
}
.ent-nav-card a i{font-size:22px;}
.ent-nav-card a.active,.ent-nav-card a:hover{color:var(--ent-primary);}

/* ---------------- 主体卡片 ---------------- */
.ent-main{padding:0 16px 32px;}
.ent-card{
  background:#fff;border-radius:var(--ent-radius);
  box-shadow:var(--ent-shadow);padding:20px;
  margin-bottom:16px;
}
.ent-card-title{
  display:flex;align-items:center;gap:8px;
  margin:0 0 20px;padding-bottom:14px;border-bottom:1px solid #f1f5f9;
  font-size:16px;font-weight:700;color:var(--ent-text);
}
.ent-card-title i{color:var(--ent-primary);font-size:20px;}

/* ---------------- 卡片式应用选择 ---------------- */
.app-grid{
  display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));
  gap:12px;margin-bottom:20px;
}
.app-card{
  border:1px solid var(--ent-border);border-radius:10px;
  padding:10px;text-align:center;cursor:pointer;
  transition:all .2s;position:relative;
}
.app-card:hover{border-color:var(--ent-primary);box-shadow:0 2px 8px rgba(59,130,246,.15);}
.app-card.active{border-color:var(--ent-primary);background:#eff6ff;border-width:2px;}
.app-img{
  width:100%;height:70px;background:#f1f5f9;border-radius:6px;
  display:flex;align-items:center;justify-content:center;
  margin-bottom:8px;color:#94a3b8;font-size:28px;
}
.app-name{font-size:14px;font-weight:600;color:var(--ent-text);margin-bottom:2px;}
.app-desc{font-size:12px;color:var(--ent-text-sub);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}

/* ---------------- 表单 ---------------- */
.form-group{margin-bottom:20px;}
.form-group > label{
  display:block;margin-bottom:8px;
  font-size:14px;font-weight:600;color:var(--ent-text);
}
.form-control{
  display:block;width:100%;height:46px;
  padding:10px 16px;font-size:14px;color:var(--ent-text);
  background:#fff;border:1px solid #cbd5e1;border-radius:8px;
  box-shadow:none;transition:border-color .2s,box-shadow .2s;
}
.form-control:focus{
  border-color:var(--ent-primary);outline:none;
  box-shadow:0 0 0 3px rgba(59,130,246,.15);
}
select.form-control{height:46px;padding:0 12px;}

/* ---------------- 按钮 ---------------- */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:6px;
  height:46px;padding:0 24px;border-radius:8px;border:1px solid transparent;
  font-size:15px;font-weight:600;cursor:pointer;
  transition:all .2s;width:100%;
}
.btn-primary{background:var(--ent-primary);border-color:var(--ent-primary);color:#fff;}
.btn-primary:hover{background:var(--ent-primary-dark);border-color:var(--ent-primary-dark);color:#fff;box-shadow:0 4px 12px rgba(59,130,246,.25);}
.btn-default{background:#fff;border-color:#cbd5e1;color:var(--ent-text-sub);}
.btn-default:hover{background:#f8fafc;border-color:#94a3b8;color:var(--ent-text);}

/* 输入组合 */
.input-group{display:flex;width:100%;}
.input-group .form-control{flex:1 1 auto;border-top-right-radius:0;border-bottom-right-radius:0;border-right:none;}
.input-group-btn{display:flex;flex:0 0 auto;}
.input-group-btn .btn{
  border-radius:0 8px 8px 0;border-left:1px solid #cbd5e1;
  background:#f8fafc;border-color:#cbd5e1;color:var(--ent-text-sub);
  width:auto;padding:0 16px;font-size:13px;
}
.input-group-btn .btn:hover{background:#f1f5f9;color:var(--ent-primary);}

/* ---------------- 提示框 ---------------- */
.ent-alert{
  background:#eff6ff;border:1px solid #bfdbfe;border-radius:var(--ent-radius);
  padding:18px;margin-bottom:20px;display:flex;gap:12px;align-items:flex-start;
}
.ent-alert i{color:var(--ent-primary);font-size:22px;flex-shrink:0;}
.ent-alert-content{flex:1;color:#1e3a8a;font-size:13px;line-height:1.7;}
.ent-alert-content p{margin:0 0 6px;}
.ent-alert-content p:last-child{margin-bottom:0;}

/* ---------------- 其他 ---------------- */
.ent-links{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;}
.ent-links .btn{width:auto;padding:0 16px;font-size:13px;height:38px;}
.ent-beian{text-align:center;padding:10px 0;color:var(--ent-text-sub);font-size:12px;}
.ent-beian a{color:var(--ent-text-sub);}
.ent-beian img{height:16px;}

/* ---------------- 响应式 ---------------- */
@media (max-width:480px){
  .app-grid{grid-template-columns:repeat(2,1fr);}
  .ent-header-inner{padding:10px 12px;}
  .ent-brand-name{font-size:16px;}
  .ent-nav-card{margin:12px 0;border-radius:0;}
  .ent-main{padding:0 0 32px;}
  .ent-card{border-radius:0;margin-bottom:12px;padding:16px;}
  .ent-alert{border-radius:0;margin-bottom:12px;}
}
/* =========================================================
   移动端适配（前台授权站）
   ========================================================= */
@media screen and (max-width: 768px){
    /* ---- 顶栏 ---- */
    .ent-header-inner{
        padding: 10px 14px !important;
        gap: 10px !important;
        min-height: auto !important;
    }
    .ent-brand-name{font-size: 15px !important;}
    .ent-brand-mark{width: 30px !important;height: 30px !important;font-size: 15px !important;}
    .ent-user{
        height: 34px !important;
        padding: 0 12px !important;
        font-size: 12px !important;
        gap: 4px !important;
    }
    .ent-user i{font-size: 14px !important;}

    /* ---- 二级导航 ---- */
    .ent-nav-card{
        margin: 10px 12px !important;
        padding: 10px 0 !important;
        overflow-x: auto !important;
        -webkit-overflow-scrolling: touch;
    }
    .ent-nav-card a{
        flex: 0 0 auto !important;
        min-width: 68px !important;
        padding: 0 6px !important;
        font-size: 11px !important;
        gap: 4px !important;
    }
    .ent-nav-card a i{font-size: 18px !important;}

    /* ---- 主容器 ---- */
    .ent-main{padding: 0 10px 24px !important;}

    /* ---- 卡片 ---- */
    .ent-card{
        padding: 16px 14px !important;
        border-radius: 12px !important;
        margin-bottom: 12px !important;
    }
    .ent-card-title{font-size: 14px !important;padding-bottom: 10px !important;margin-bottom: 14px !important;}
    .ent-card-title i{font-size: 17px !important;}

    /* ---- 应用卡片网格：两列 ---- */
    .app-grid{
        grid-template-columns: repeat(2,1fr) !important;
        gap: 8px !important;
        margin-bottom: 14px !important;
    }
    .app-card{padding: 8px !important;}
    .app-img{
        height: 56px !important;
        font-size: 22px !important;
        margin-bottom: 6px !important;
    }
    .app-name{font-size: 13px !important;}
    .app-desc{font-size: 11px !important;}

    /* ---- 表单 ---- */
    .form-group{margin-bottom: 14px !important;}
    .form-group > label{font-size: 13px !important;margin-bottom: 6px !important;}
    .form-control{
        font-size: 16px !important;
        height: 42px !important;
        padding: 8px 12px !important;
        border-radius: 8px !important;
    }
    select.form-control{height: 42px !important;}

    /* ---- 按钮：全宽 / 加高 ---- */
    .btn{
        font-size: 15px !important;
        height: 44px !important;
        padding: 0 16px !important;
        border-radius: 8px !important;
    }

    /* ---- 输入组合：输入框 + 右侧按钮 ---- */
    .input-group .form-control{
        border-radius: 8px 0 0 8px !important;
    }
    .input-group-btn .btn{
        border-radius: 0 8px 8px 0 !important;
        padding: 0 12px !important;
        font-size: 13px !important;
        width: auto !important;
        height: 42px !important;
    }

    /* ---- 提示卡片 ---- */
    .ent-alert{
        padding: 14px !important;
        border-radius: 10px !important;
        gap: 10px !important;
    }
    .ent-alert i{font-size: 18px !important;}
    .ent-alert-content{font-size: 12px !important;}

    /* ---- 友情链接 ---- */
    .ent-links{gap: 6px !important;}
    .ent-links .btn{
        width: auto !important;
        height: 34px !important;
        padding: 0 12px !important;
        font-size: 12px !important;
    }

    /* ---- 备案 ---- */
    .ent-beian{font-size: 11px !important;}
    .ent-beian img{height: 14px !important;}
}

/* 超小屏 */
@media screen and (max-width: 400px){
    .ent-nav-card a{min-width: 60px !important;font-size: 10px !important;}
    .ent-nav-card a i{font-size: 16px !important;}
    .app-grid{grid-template-columns: repeat(2,1fr) !important;}
}