:root{--color-primary: #1890ff;--color-primary-dark: #096dd9;--color-primary-light: #40a9ff;--color-planned: #faad14;--color-active: #52c41a;--color-completed: #8c8c8c;--bg-primary: #f0f2f5;--bg-secondary: #ffffff;--text-primary: #262626;--text-secondary: #8c8c8c}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--bg-primary);color:var(--text-primary)}.login-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background-color:#0d0d0d;background-image:url(/diamond-pattern.svg);background-size:400px 400px;background-repeat:repeat}.login-card{width:100%;max-width:400px;padding:40px;background:#fff;border-radius:8px;box-shadow:0 20px 60px #00000080}.login-logo{text-align:center;margin-bottom:30px}.login-logo h1{font-size:28px;color:var(--color-primary);margin-top:10px}.login-logo p{color:var(--text-secondary);margin-top:5px}.main-layout{min-height:100vh}.main-header{display:flex;align-items:center;justify-content:space-between;padding:0 24px;background:#fff;box-shadow:0 2px 8px #0000000f}.header-logo{display:flex;align-items:center;gap:10px;font-size:20px;font-weight:700;color:var(--color-primary)}.header-user{display:flex;align-items:center;gap:15px}.main-content{padding:24px;min-height:calc(100vh - 64px)}.page-card{background:#fff;border-radius:8px;padding:24px;margin-bottom:24px}.page-title{font-size:24px;font-weight:600;margin-bottom:20px;color:var(--text-primary)}.status-tag-planned{background-color:#fffbe6;border-color:var(--color-planned);color:#ad6800}.status-tag-active{background-color:#f6ffed;border-color:var(--color-active);color:#389e0d}.status-tag-completed{background-color:#fafafa;border-color:var(--color-completed);color:#595959}.ant-table-thead>tr>th{padding:6px 8px!important;font-size:12px}.ant-table-tbody>tr>td{padding:4px 8px!important;font-size:12px}.ant-table-tbody>tr>td.ant-table-selection-column{padding:4px 8px!important}.ant-table-thead>tr>th.ant-table-selection-column{padding:6px 8px!important}.ant-pagination{margin:8px 0 0!important}.ant-pagination-item,.ant-pagination-prev,.ant-pagination-next{min-width:24px;height:24px;line-height:22px}@media (max-width: 768px){.main-content{padding:16px}.login-card{margin:16px;padding:24px}}
