342 lines
6.5 KiB
CSS
342 lines
6.5 KiB
CSS
/**
|
|
* Tailwind CSS 配置
|
|
*
|
|
* 这个文件曾经包含所有样式定义,但现在已重组为更模块化的结构。
|
|
* 请使用 app/styles/index.css 作为主样式入口文件。
|
|
* 以下样式已转移到其他组件特定的CSS文件中,保留在此仅作备份参考。
|
|
*/
|
|
|
|
@import "./base.css";
|
|
|
|
:root {
|
|
--primary-color: #00684a;
|
|
--primary-hover: #005a40;
|
|
--primary-light: rgba(0, 104, 74, 0.1);
|
|
--success-color: #52c41a;
|
|
--warning-color: #faad14;
|
|
--error-color: #ff4d4f;
|
|
--text-color: rgba(0, 0, 0, 0.85);
|
|
--text-secondary: rgba(0, 0, 0, 0.45);
|
|
--border-color: #f0f0f0;
|
|
--bg-gray: #f5f5f5;
|
|
}
|
|
|
|
/*
|
|
@layer components {
|
|
/* 布局容器 */
|
|
/*
|
|
.layout-container {
|
|
@apply flex h-screen w-full overflow-hidden;
|
|
}
|
|
|
|
/* 侧边栏 */
|
|
/*
|
|
.sidebar {
|
|
@apply w-60 h-screen bg-blue-50 border-r border-gray-100 flex flex-col transition-all duration-300 fixed left-0 top-0 z-50 overflow-y-auto shadow-sm;
|
|
}
|
|
|
|
.sidebar.collapsed {
|
|
@apply w-16;
|
|
}
|
|
|
|
/* 主内容区 */
|
|
/*
|
|
.main-content {
|
|
@apply flex-1 p-5 overflow-y-auto ml-60 transition-all duration-300;
|
|
}
|
|
|
|
.main-content.sidebar-collapsed {
|
|
@apply ml-16;
|
|
}
|
|
|
|
/* 面包屑导航 */
|
|
/*
|
|
.breadcrumb {
|
|
@apply flex items-center text-sm text-gray-500 mb-4;
|
|
}
|
|
|
|
.breadcrumb-item {
|
|
@apply flex items-center;
|
|
}
|
|
|
|
.breadcrumb-item:not(:last-child)::after {
|
|
content: "/";
|
|
@apply mx-2 text-gray-400;
|
|
}
|
|
|
|
.breadcrumb-item:last-child {
|
|
@apply text-gray-700 font-medium;
|
|
}
|
|
|
|
/* 侧边栏菜单 */
|
|
/*
|
|
.sidebar-menu-item {
|
|
@apply py-2 px-4 hover:bg-gray-50 rounded-md transition-all duration-200 mb-1;
|
|
}
|
|
|
|
.sidebar-menu-item.active {
|
|
@apply bg-primary bg-opacity-10;
|
|
}
|
|
|
|
.sidebar-menu-item.active a {
|
|
@apply text-primary font-medium;
|
|
}
|
|
|
|
/* 卡片样式 */
|
|
/*
|
|
.dashboard-card {
|
|
@apply bg-white rounded-lg shadow-sm p-5 mb-5;
|
|
}
|
|
|
|
.card-title {
|
|
@apply text-base font-semibold mb-4 flex items-center text-gray-800;
|
|
}
|
|
|
|
.card-title i {
|
|
@apply text-xl mr-2 text-primary;
|
|
}
|
|
|
|
/* 统计卡片网格 */
|
|
/*
|
|
.stat-grid {
|
|
@apply grid grid-cols-1 md:grid-cols-4 gap-4;
|
|
}
|
|
|
|
/* 状态标签 */
|
|
/*
|
|
.status-badge {
|
|
@apply inline-flex items-center px-2 py-0.5 rounded-full text-xs font-medium;
|
|
}
|
|
|
|
.status-badge.status-success {
|
|
@apply bg-green-50 text-green-600;
|
|
}
|
|
|
|
.status-badge.status-warning {
|
|
@apply bg-yellow-50 text-yellow-600;
|
|
}
|
|
|
|
.status-badge.status-error {
|
|
@apply bg-red-50 text-red-600;
|
|
}
|
|
|
|
/* 状态点 */
|
|
/*
|
|
.status-dot {
|
|
@apply inline-block w-2 h-2 rounded-full mr-1.5;
|
|
}
|
|
|
|
.status-dot-success {
|
|
@apply bg-green-500;
|
|
}
|
|
|
|
.status-dot-warning {
|
|
@apply bg-yellow-500;
|
|
}
|
|
|
|
.status-dot-error {
|
|
@apply bg-red-500;
|
|
}
|
|
|
|
.status-dot-default {
|
|
@apply bg-gray-400;
|
|
}
|
|
|
|
/* 表单组件 */
|
|
/*
|
|
.form-label {
|
|
@apply block text-sm font-medium text-gray-700 mb-1;
|
|
}
|
|
|
|
.form-input {
|
|
@apply block w-full px-3 py-2 border border-gray-300 rounded-md shadow-sm focus:outline-none focus:ring-primary focus:border-primary sm:text-sm;
|
|
}
|
|
|
|
.form-select {
|
|
@apply block w-full px-3 py-2 border border-gray-300 rounded-md shadow-sm focus:outline-none focus:ring-primary focus:border-primary sm:text-sm;
|
|
}
|
|
|
|
.search-box {
|
|
@apply relative flex;
|
|
}
|
|
|
|
.search-box input {
|
|
@apply pr-10;
|
|
}
|
|
|
|
.search-box button {
|
|
@apply absolute inset-y-0 right-0 flex items-center px-2;
|
|
}
|
|
|
|
/* 表格样式 */
|
|
/*
|
|
.ant-table {
|
|
@apply w-full bg-white rounded-md overflow-hidden;
|
|
}
|
|
|
|
.ant-table th {
|
|
@apply py-3 px-4 text-left text-sm font-medium text-gray-600 bg-gray-50 border-b border-gray-200;
|
|
}
|
|
|
|
.ant-table td {
|
|
@apply py-3 px-4 text-sm text-gray-700 border-b border-gray-100;
|
|
}
|
|
|
|
.ant-table tr:hover td {
|
|
@apply bg-gray-50;
|
|
}
|
|
|
|
/* 按钮样式 */
|
|
/*
|
|
.ant-btn {
|
|
@apply inline-flex items-center justify-center px-4 py-2 border border-transparent rounded-md shadow-sm text-sm font-medium focus:outline-none transition-colors duration-200;
|
|
}
|
|
|
|
.ant-btn-primary {
|
|
@apply bg-primary text-white hover:bg-primary-dark;
|
|
}
|
|
|
|
.ant-btn-default {
|
|
@apply bg-white text-gray-700 border-gray-300 hover:bg-gray-50;
|
|
}
|
|
|
|
.ant-btn-danger {
|
|
@apply bg-white text-red-600 border-gray-300 hover:bg-red-50 hover:border-red-300;
|
|
}
|
|
|
|
.ant-btn-sm {
|
|
@apply px-2.5 py-1 text-xs;
|
|
}
|
|
|
|
/* 标签样式 */
|
|
/*
|
|
.ant-tag {
|
|
@apply inline-flex items-center px-2 py-0.5 rounded-md text-xs font-medium;
|
|
}
|
|
|
|
.ant-tag-blue {
|
|
@apply bg-blue-50 text-blue-600;
|
|
}
|
|
|
|
.ant-tag-green {
|
|
@apply bg-green-50 text-green-600;
|
|
}
|
|
|
|
.ant-tag-cyan {
|
|
@apply bg-cyan-50 text-cyan-600;
|
|
}
|
|
|
|
.ant-tag-purple {
|
|
@apply bg-purple-50 text-purple-600;
|
|
}
|
|
|
|
.ant-tag-orange {
|
|
@apply bg-orange-50 text-orange-600;
|
|
}
|
|
|
|
.ant-tag-red {
|
|
@apply bg-red-50 text-red-600;
|
|
}
|
|
|
|
/* 卡片样式 */
|
|
/*
|
|
.ant-card {
|
|
@apply bg-white rounded-md shadow-sm overflow-hidden mb-5;
|
|
}
|
|
|
|
.ant-card-body {
|
|
@apply p-5;
|
|
}
|
|
|
|
/* 评查结果面板 */
|
|
/*
|
|
.review-points-panel {
|
|
@apply bg-white rounded-md shadow-sm overflow-hidden h-full;
|
|
}
|
|
|
|
.review-panel-header {
|
|
@apply bg-primary bg-opacity-10 flex items-center;
|
|
}
|
|
|
|
/* 评查点样式 */
|
|
/*
|
|
.review-point-item {
|
|
@apply border-b border-gray-100 p-3 hover:bg-gray-50 cursor-pointer;
|
|
}
|
|
|
|
.review-point-header {
|
|
@apply flex items-center justify-between mb-1;
|
|
}
|
|
|
|
.review-point-title {
|
|
@apply text-sm font-medium text-gray-700;
|
|
}
|
|
|
|
.review-point-location {
|
|
@apply flex items-center text-xs text-gray-500;
|
|
}
|
|
|
|
/* 选项卡 */
|
|
/*
|
|
.tab-container {
|
|
@apply bg-white rounded-md shadow-sm overflow-hidden;
|
|
}
|
|
|
|
.tab-nav {
|
|
@apply flex border-b border-gray-200;
|
|
}
|
|
|
|
.tab-nav-item {
|
|
@apply flex items-center py-3 px-4 text-sm font-medium text-gray-600 cursor-pointer;
|
|
}
|
|
|
|
.tab-nav-item i {
|
|
@apply mr-1.5;
|
|
}
|
|
|
|
.tab-nav-item.active {
|
|
@apply text-primary border-b-2 border-primary;
|
|
}
|
|
|
|
.tab-content {
|
|
@apply p-4;
|
|
}
|
|
|
|
.tab-pane {
|
|
@apply hidden;
|
|
}
|
|
|
|
.tab-pane.active {
|
|
@apply block;
|
|
}
|
|
|
|
/* 辅助类 */
|
|
/*
|
|
.text-primary {
|
|
@apply text-green-700;
|
|
}
|
|
|
|
.bg-primary {
|
|
@apply bg-green-700;
|
|
}
|
|
|
|
.bg-primary-light {
|
|
@apply bg-green-50;
|
|
}
|
|
|
|
.text-success {
|
|
@apply text-green-600;
|
|
}
|
|
|
|
.text-warning {
|
|
@apply text-yellow-600;
|
|
}
|
|
|
|
.text-error {
|
|
@apply text-red-600;
|
|
}
|
|
|
|
.border-primary {
|
|
@apply border-green-700;
|
|
}
|
|
} */ |