 * {
            margin: 0;
            padding: 0;
            box-sizing: border-box;
        }
        
        body {
            font-family: "Microsoft YaHei", "华文宋体", "宋体", Arial, sans-serif;
            min-height: 100vh;
            padding: 20px;
        }
        
        /* 手机端优化：减小边距，最大化内容宽度 */
        @media (max-width: 768px) {
            body {
                padding: 10px;
            }
            
            .container {
                padding: 0 5px;
            }
            
            /* 让日期类型、性别、真太阳时在手机端根据内容自动调整宽度 */
            .form-row:first-child {
                display: flex;
                gap: 10px;
            }
            
            .form-row:first-child .form-group {
                margin-bottom: 10px;
                flex: 1; /* 让元素根据内容自动调整宽度 */
                min-width: 0; /* 允许元素收缩 */
            }
            
            .form-row:first-child .form-group:first-child {
                flex: 1.5; /* 日期类型可能文字较多，给更多空间 */
            }
            
            .form-row:first-child .form-group:nth-child(2) {
                flex: 0.8; /* 性别选项文字较少，给较少空间 */
            }
            
            .form-row:first-child .form-group:nth-child(3) {
                flex: 1.2; /* 真太阳时选项文字适中，给适中空间 */
            }
            
            .form-row:first-child .form-group label {
                font-size: 14px;
                margin-bottom: 5px;
            }
            
            .form-row:first-child .form-group select {
                padding: 8px;
                font-size: 14px;
            }
            
            /* 让出生年份、出生月份、出生日期在手机端显示在同一排 */
            .form-row:nth-child(3) {
                display: flex !important;
                gap: 10px;
            }
            
            .form-row:nth-child(3) .form-group {
                margin-bottom: 10px;
                flex: 1;
                min-width: 0;
            }
            
            .form-row:nth-child(3) .form-group:first-child {
                flex: 1.3; /* 出生年份可能文字较多，给更多空间 */
            }
            
            .form-row:nth-child(3) .form-group:nth-child(2) {
                flex: 1; /* 出生月份文字适中，给适中空间 */
            }
            
            .form-row:nth-child(3) .form-group:nth-child(3) {
                flex: 1; /* 出生日期文字适中，给适中空间 */
            }
            
            .form-row:nth-child(3) .form-group label {
                font-size: 14px;
                margin-bottom: 5px;
            }
            
            .form-row:nth-child(3) .form-group select {
                padding: 8px;
                font-size: 14px;
            }
            
            /* 让出生时间相关选项在手机端显示在同一排 */
            .form-row:nth-child(4) {
                display: flex !important;
                gap: 10px;
            }
            
            .form-row:nth-child(4) .form-group {
                margin-bottom: 10px;
                flex: 1;
                min-width: 0;
            }
            
            .form-row:nth-child(4) .form-group:first-child {
                flex: 1; /* 是否闰月 */
            }
            
            .form-row:nth-child(4) .form-group:nth-child(2) {
                flex: 1; /* 出生小时 */
            }
            
            .form-row:nth-child(4) .form-group:nth-child(3) {
                flex: 1; /* 出生分钟 */
            }
            
            .form-row:nth-child(4) .form-group label {
                font-size: 14px;
                margin-bottom: 5px;
            }
            
            .form-row:nth-child(4) .form-group select {
                padding: 8px;
                font-size: 14px;
            }
        }
        
        @media (max-width: 480px) {
            body {
                padding: 5px;
            }
            
            .container {
                padding: 0;
            }
            
            /* 超小屏幕进一步优化 */
            .form-row:first-child {
                display: flex;
                gap: 5px;
            }
            
            .form-row:first-child .form-group:first-child {
                flex: 1.5;
            }
            
            .form-row:first-child .form-group:nth-child(2) {
                flex: 0.7;
            }
            
            .form-row:first-child .form-group:nth-child(3) {
                flex: 1.1;
            }
            
            .form-row:first-child .form-group label {
                font-size: 12px;
                margin-bottom: 3px;
            }
            
            .form-row:first-child .form-group select {
                padding: 6px;
                font-size: 12px;
            }
            
            /* 超小屏幕下出生年份、出生月份、出生日期的优化 */
            .form-row:nth-child(3) {
                display: flex !important;
                gap: 5px;
            }
            
            .form-row:nth-child(3) .form-group:first-child {
                flex: 1.2;
            }
            
            .form-row:nth-child(3) .form-group:nth-child(2) {
                flex: 0.9;
            }
            
            .form-row:nth-child(3) .form-group:nth-child(3) {
                flex: 0.9;
            }
            
            .form-row:nth-child(3) .form-group label {
                font-size: 12px;
                margin-bottom: 3px;
            }
            
            .form-row:nth-child(3) .form-group select {
                padding: 6px;
                font-size: 12px;
            }
            
            /* 超小屏幕下出生时间相关选项的优化 */
            .form-row:nth-child(4) {
                display: flex !important;
                gap: 5px;
            }
            
            .form-row:nth-child(4) .form-group:first-child {
                flex: 1;
            }
            
            .form-row:nth-child(4) .form-group:nth-child(2) {
                flex: 1;
            }
            
            .form-row:nth-child(4) .form-group:nth-child(3) {
                flex: 1;
            }
            
            .form-row:nth-child(4) .form-group label {
                font-size: 12px;
                margin-bottom: 3px;
            }
            
            .form-row:nth-child(4) .form-group select {
                padding: 6px;
                font-size: 12px;
            }
        }
        
        .container {
            max-width: 800px;
            margin: 0 auto;
            padding: 10px;
            background: #fffaf0;
            border: 1px solid #d4af37;
            border-radius: 10px;
            box-shadow: 0 0 20px rgba(212, 175, 55, 0.3);
        }
        @media (min-width: 1024px) {
           .container {
            max-width: 800px;
            margin: 0 auto;
            padding: 15px;
            background: #fffaf0;
            border: 1px solid #d4af37;
            border-radius: 10px;
            box-shadow: 0 0 20px rgba(212, 175, 55, 0.3);
        }
  }
        
        .header {
            text-align: center;
            color: #8b0000;
            margin-bottom: 30px;
            padding: 20px;
            background: linear-gradient(to bottom, #fffaf0, #f5f5dc);
            border-bottom: 2px solid #d4af37;
        }
        
        .header h1 {
            font-size: 2.5em;
            margin-bottom: 10px;
            font-weight: bold;
            letter-spacing: 2px;
        }
        
        .header p {
            font-size: 1.1em;
            color: #8b4513;
        }
        
        /* 遮罩弹出层样式 */
        .loading-overlay {
            position: fixed;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            background: linear-gradient(135deg, rgba(139, 0, 0, 0.9), rgba(165, 42, 42, 0.85));
            display: flex;
            justify-content: center;
            align-items: center;
            z-index: 1000;
            backdrop-filter: blur(5px);
        }
        
        .loading-popup {
            background: linear-gradient(145deg, #fffaf0, #f5f5dc);
            border: 3px solid #d4af37;
            border-radius: 15px;
            padding: 40px 30px;
            text-align: center;
            box-shadow: 0 0 30px rgba(212, 175, 55, 0.7), 0 0 60px rgba(139, 0, 0, 0.5);
            max-width: 350px;
            width: 90%;
            position: relative;
            overflow: hidden;
        }
        
        .loading-popup::before {
            content: '';
            position: absolute;
            top: -50%;
            left: -50%;
            width: 200%;
            height: 200%;
            background: radial-gradient(circle, rgba(212, 175, 55, 0.2) 0%, transparent 70%);
            animation: rotate 10s linear infinite;
            z-index: -1;
        }
        
        .loading-popup p {
            margin: 15px 0;
            color: #8b0000;
            font-size: 18px;
            font-weight: bold;
            text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.1);
            line-height: 1.4;
        }
        
        .loading-popup p:first-child {
            margin-top: 0;
            font-size: 20px;
            color: #667eea;
        }
        
        .loading-popup p:last-child {
            margin-bottom: 0;
            color: #4caf50;
        }
        
        /* AI效验动态元素 */
        .ai-verification {
            display: flex;
            justify-content: center;
            align-items: center;
            margin: 20px 0;
        }
        
        .ai-dot {
            width: 12px;
            height: 12px;
            background: #667eea;
            border-radius: 50%;
            margin: 0 5px;
            animation: ai-pulse 1.5s infinite ease-in-out;
        }
        
        .ai-dot:nth-child(2) {
            animation-delay: 0.2s;
            background: #d4af37;
        }
        
        .ai-dot:nth-child(3) {
            animation-delay: 0.4s;
            background: #4caf50;
        }
        
        @keyframes ai-pulse {
            0%, 100% {
                transform: scale(1);
                opacity: 1;
            }
            50% {
                transform: scale(1.3);
                opacity: 0.7;
            }
        }
        
        @keyframes rotate {
            from {
                transform: rotate(0deg);
            }
            to {
                transform: rotate(360deg);
            }
        }
        
        .card {
            background: #fffaf0;
            border: 1px solid #d4af37;
            border-radius: 8px;
            padding: 4px;
            margin-bottom: 20px;
            box-shadow: 0 5px 15px rgba(212, 175, 55, 0.2);
        }
        @media (min-width: 1024px) {
 .card {
    background: #fffaf0;
    border: 1px solid #d4af37;
    border-radius: 8px;
    padding: 15px;
    margin-bottom: 20px;
    box-shadow: 0 5px 15px rgba(212, 175, 55, 0.2);
}
  }
        .form-group {
            margin-bottom: 20px;
        }
        
        .form-group label {
            display: block;
            margin-bottom: 8px;
            color: #333;
            font-weight: bold;
        }
        
        .form-row {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
            gap: 15px;
        }
        
        .form-group input,
        .form-group select {
            width: 100%;
            padding: 12px;
            border: 2px solid #e0e0e0;
            border-radius: 8px;
            font-size: 16px;
            transition: border-color 0.3s;
        }
        
        .form-group input:focus,
        .form-group select:focus,
		.form-group option:focus{outline: none;}
        
        .btn-primary {
            background: linear-gradient(to bottom, #8b0000, #a52a2a);
            color: #fffaf0;
            padding: 15px 40px;
            border: 1px solid #d4af37;
            border-radius: 8px;
            font-size: 18px;
            font-weight: bold;
            cursor: pointer;
            width: 100%;
            transition: all 0.3s;
            letter-spacing: 2px;
        }
        
        .btn-primary:hover {
            background: linear-gradient(to bottom, #a52a2a, #8b0000);
            box-shadow: 0 5px 15px rgba(139, 0, 0, 0.4);
            transform: translateY(-2px);
        }
        .btn-primary:focus {
        outline: none;
        }
        #result {
            display: none;
        }
        
        .result-section {
            margin-bottom: 25px;
        }
        
        .result-section h3 {
            color: #8b0000;
            margin-bottom: 15px;
            padding-bottom: 10px;
            border-bottom: 2px solid #d4af37;
            font-weight: bold;
            letter-spacing: 1px;
        }
        
        /* 旧的四柱显示样式已废弃，现在使用表格布局 */
        
        .zhu-item {
            background: #fffaf0;
            padding: 15px;
            border: 1px solid #d4af37;
            border-radius: 5px;
            text-align: center;
            box-shadow: 0 2px 5px rgba(212, 175, 55, 0.1);
        }
        
        .zhu-item.rizhu {
            background: #fff0f5;
            border: 2px solid #d4af37;
        }
        
        .zhu-item h4 {
            color: #666;
            margin-bottom: 10px;
            font-size: 14px;
        }
        
        .zhu-item .ganzhi {
            font-size: 1.8em;
            font-weight: bold;
            color: #8b0000;
            margin: 10px 0;
            display: flex;
            flex-direction: column;
            align-items: center;
            gap: 3px;
        }
        
        .zhu-item .gan {
            font-size: 2.2em;
            font-weight: bold;
            color: #8b0000;
            display: block;
        }
        
        .zhu-item .gan-label {
            font-size: 0.5em;
            color: #8b4513;
            margin-bottom: 3px;
        }
        
        /* 乾造/坤造高亮样式 */
        .zhu-item.rizhu .gan-label {
            font-size: 0.6em;
            color: #8b0000;
            font-weight: bold;
            margin-bottom: 5px;
            background: #fff0f5;
            padding: 3px 10px;
            border-radius: 10px;
            border: 1px solid #d4af37;
        }
        
        .zhu-item .nayin-label {
            font-size: 0.4em;
            color: #666;
            margin-bottom: 3px;
        }
        
        .zhu-item .nayin-header {
            font-size: 0.8em;
            color: #666;
            margin-bottom: 5px;
            padding: 2px 8px;
            background-color: #f0f0f0;
            border-radius: 10px;
            display: inline-block;
        }
        
        /* 空亡信息样式 */
        .zhu-item .kongwang-label {
            font-size: 0.7em;
            color: #ff0000;
            font-weight: bold;
            margin-bottom: 3px;
            padding: 2px 6px;
            background-color: #ffe6e6;
            border-radius: 8px;
            display: inline-block;
        }
        
        /* 年柱颜色 */
        .zhu-item:nth-child(1) .nayin-header {
            color: #d9534f; /* 红色 */
            background-color: #fdf4f4;
        }
        
        .zhu-item:nth-child(1) .gan-label {
            color: #d9534f; /* 红色 */
        }
        
        /* 月柱颜色 */
        .zhu-item:nth-child(2) .nayin-header {
            color: #5cb85c; /* 绿色 */
            background-color: #f5fdf4;
        }
        
        .zhu-item:nth-child(2) .gan-label {
            color: #5cb85c; /* 绿色 */
        }
        
        /* 日柱颜色 */
        .zhu-item:nth-child(3) .nayin-header {
            color: #667eea; /* 蓝色 */
            background-color: #f4f7fd;
        }
        
        .zhu-item:nth-child(3) .gan-label {
            color: #667eea; /* 蓝色 */
        }
        
        /* 时柱颜色 */
        .zhu-item:nth-child(4) .nayin-header {
            color: #f0ad4e; /* 橙色 */
            background-color: #fdf8f4;
        }
        
        .zhu-item:nth-child(4) .gan-label {
            color: #f0ad4e; /* 橙色 */
        }
        
        .zhu-item .zhi {
            font-size: 2.2em;
            font-weight: bold;
            color: #8b4513;
            display: block;
            margin-top: 5px;
        }
        
        .zhu-item .zhi-label {
            font-size: 0.5em;
            color: #8b4513;
            margin-top: -3px;
        }
        
        .zhu-item .shishen {
            display: none;
        }
        
        .zhu-item .cangan {
            font-size: 0.75em;
            color: #666;
            margin-top: 8px;
            padding-top: 8px;
            border-top: 1px dashed #ccc;
        }
        
        /* 藏干十神垂直显示样式 */
        .cangan-shishen-display {
            display: flex;
            flex-direction: column;
            align-items: center;
            margin: 3px 0;
            font-size: 0.7em;
        }
        
        .cangan-row, .shishen-row {
            display: flex;
            justify-content: center;
            gap: 3px;
            margin: 1px 0;
        }
        
        .cangan-item, .shishen-item {
            font-size: 0.9em;
            padding: 1px 3px;
            min-width: 20px;
            text-align: center;
        }
        
        .cangan-item {
            background-color: #e8f4f8;
            border-radius: 2px;
        }
        
        /* 不同十神使用不同颜色 - 使用明显不同的颜色以便区分 */
        .shishen-item.bijian { background-color: #ffebee; color: #e53935; font-weight: bold; } /* 比肩 - 红色 */
        .shishen-item.jiecai { background-color: #fff3e0; color: #ff9800; font-weight: bold; } /* 劫财 - 橙色 */
        .shishen-item.shishen { background-color: #e3f2fd; color: #2196f3; font-weight: bold; } /* 食神 - 蓝色 */
        .shishen-item.shangguan { background-color: #f3e5f5; color: #9c27b0; font-weight: bold; } /* 伤官 - 紫色 */
        .shishen-item.piancai { background-color: #e8f5e8; color: #4caf50; font-weight: bold; } /* 偏财 - 绿色 */
        .shishen-item.zhengcai { background-color: #e0f2f1; color: #009688; font-weight: bold; } /* 正财 - 青色 */
        .shishen-item.qisha { background-color: #fce4ec; color: #ec407a; font-weight: bold; } /* 七杀 - 粉色 */
        .shishen-item.zhengguan { background-color: #fff8e1; color: #ff6d00; font-weight: bold; } /* 正官 - 深橙色 */
        .shishen-item.pianyin { background-color: #e1f5fe; color: #0288d1; font-weight: bold; } /* 偏印 - 深蓝色 */
        .shishen-item.zhengyin { background-color: #f1f8e9; color: #8bc34a; font-weight: bold; } /* 正印 - 浅绿色 */

        /* 四柱表格布局 */
        .sizhu-table {
            width: 100%;
            margin: 20px auto;
            border: 1px solid #d4af37;
            background: #fffaf0;
            border-radius: 8px;
            overflow: hidden;
        }
        
        .sizhu-row {
            display: grid;
            grid-template-columns: 80px repeat(4, 1fr);
            border-bottom: 1px solid #e8d7a5;
        }
        
        .sizhu-row:last-child {
            border-bottom: none;
        }
        
        .sizhu-cell {
            padding: 10px;
            text-align: center;
            border-right: 1px solid #e8d7a5;
            min-height: 40px;
            word-wrap: break-word;
            overflow-wrap: break-word;
        }
        
        .sizhu-cell:last-child {
            border-right: none;
        }
        
        .sizhu-cell.label {
            background: #f5f0e8;
            font-weight: bold;
            color: #8b4513;
            font-size: 0.9em;
        }
        
        /* 表头样式 */
        .row-header {
            background: #f5f0e8;
            font-weight: bold;
            color: #8b0000;
            font-size: 1em;
        }
        
        .row-header .sizhu-cell {
            background: transparent;
        }
        
        /* 干神行 */
        .row-ganshishen .sizhu-cell:not(.label) {
            color: #d9534f;
            font-size: 1.2em;
        }
        
        /* 天干行 */
        .row-gan .sizhu-cell {
            display: flex;
            align-items: center;
            justify-content: center;
        }
        
        .row-gan .gan-cell {
            font-size: 1.8em;
            font-weight: bold;
            color: #8b0000;
        }
        
        /* 地支行 */
        .row-zhi .sizhu-cell {
            display: flex;
            align-items: center;
            justify-content: center;
        }
        
        .row-zhi .zhi-cell {
            font-size: 1.8em;
            font-weight: bold;
            color: #d9534f;
        }
        
        /* 藏干行 */
        .canggan-cell {
            display: flex;
            flex-direction: column;
            gap: 2px;
            padding: 5px;
            align-items: center;
        }
        
        .canggan-item {
            font-size: 1.2em;
            color: #8b4513;
            padding: 2px 4px;
            background: #fef9f3;
            border-radius: 3px;
        }
        
        /* 支神行 */
        .zhishishen-cell {
            display: flex;
            flex-direction: column;
            gap: 2px;
            padding: 5px;
            align-items: center;
        }
        
        .zhishishen-cell .shishen-item {
            font-size: 1.2em;
            padding: 2px 4px;
            border-radius: 3px;
            font-weight: bold;
        }
        
        /* 十神颜色 */
        .zhishishen-cell .shishen-item {
            color: #d9534f;
        }
        
        /* 纳音行 */
        .row-nayin .sizhu-cell:not(.label) {
            font-size:1.2em;
            color: #8b4513;
        }
        
        /* 空亡行 */
        .row-kongwang .sizhu-cell:not(.label) {
            font-size: 1.2em;
            color: #8e44ad;
        }
        
        /* 地势行 */
        .row-dishi .sizhu-cell:not(.label) {
            font-size: 1.2em;
            color: #4caf50;
        }
        
        /* 日坐行 */
        .row-rizuo .sizhu-cell:not(.label) {
            font-size:1.2em;
            color: #4caf50;
            font-weight: bold;
        }
        
        /* 神煞行 */
        .row-shensha .shensha-cell {
            display: flex;
            flex-direction: column;
            align-items: stretch;
            padding: 5px;
            gap: 5px;
        }
        
        .shensha-tag {
            padding: 6px 8px;
            border-radius: 3px;
            font-size: 1.2em;
            color: #8b4513;
            font-weight: bold;
            text-align: center;
            display: block;
            width: 100%;
        }
        
        /* 手机端适配 */
        @media (max-width: 768px) {
            .sizhu-table {
                font-size: 12px;
            }
            
            .sizhu-row {
                grid-template-columns: 60px repeat(4, 1fr);
            }
            
            .sizhu-cell {
                padding: 6px 4px;
                min-height: 35px;
            }
            
            .sizhu-cell.label {
                font-size: 1.3em;
            }
            
            .row-header {
                font-size: 1.3em;
            }
            
            .row-gan .gan-cell,
            .row-zhi .zhi-cell {
                font-size: 1.4em;
            }
            
            .canggan-item,
            .zhishishen-cell .shishen-item {
                font-size: 1.3em;
                padding: 1px 3px;
            }
            
            /* 神煞在手机端独占一行 */
            .shensha-tag {
                font-size: 1.05em;
                padding: 4px 2px;
                margin-bottom: 3px;
            }
        }
        
        @media (max-width: 480px) {
            .sizhu-table {
                font-size: 11px;
            }
            
            .sizhu-row {
                grid-template-columns: 50px repeat(4, 1fr);
            }
            
            .sizhu-cell {
                padding: 5px 2px;
                min-height: 30px;
            }
            
            .row-gan .gan-cell,
            .row-zhi .zhi-cell {
                font-size: 1.6em;
            }
            
            /* 超小屏幕神煞显示优化 */
            .shensha-tag {
                font-size:1.05em;
                padding: 3px 1px;
                margin-bottom: 2px;
            }
        }
        
        .shensha-column-label {
            font-size: 1.05em;
            color: #e74c3c;
            background-color: #fef5f4;
            padding: 2px 6px;
            border-radius: 3px;
            margin-top: 3px;
            display: inline-block;
            border: 1px solid #fadbd8;
        }
        
        /* 手机端藏干十神显示优化 */
        @media (max-width: 768px) {
            .cangan-row, .shishen-row {
                gap: 10px;
            }
            
            .cangan-item, .shishen-item {
                min-width: 20px;
                font-size: 0.9em;
            }
        }
        
        @media (max-width: 480px) {
            .cangan-row, .shishen-row {
                gap: 8px;
            }
            
            .cangan-item, .shishen-item {
                min-width: 20px;
                font-size: 0.8em;
            }
        }
        
        .wuxing-grid {
            display: grid;
            grid-template-columns: repeat(5, 1fr);
            gap: 10px;
            margin: 15px 0;
        }
        
        .wuxing-item {
            background: #f5f5f5;
            padding: 15px;
            border-radius: 8px;
            text-align: center;
        }
        
        .wuxing-item.jin { background: #ffd700; }
        .wuxing-item.mu { background: #90ee90; }
        .wuxing-item.shui { background: #87ceeb; }
        .wuxing-item.huo { background: #ff6347; }
        .wuxing-item.tu { background: #daa520; }
        
        .wuxing-item .name {
            font-weight: bold;
            margin-bottom: 5px;
        }
        
        .wuxing-item .count {
            font-size: 1.5em;
            font-weight: bold;
            color: #333;
        }
        
        .dayun-list {
            display: grid;
            grid-template-columns: repeat(auto-fill, minmax(100px, 1fr));
            gap: 8px;
        }
        
        .dayun-item {
            background: #fffaf0;
            padding: 12px;
            border: 1px solid #d4af37;
            border-radius: 5px;
            text-align: center;
            box-shadow: 0 2px 3px rgba(212, 175, 55, 0.1);
        }
        
        .dayun-item .ganzhi {
            font-size: 1.2em;
            font-weight: bold;
            color: #8b0000;
            margin-bottom: 3px;
        }
        
        .dayun-item .age {
            font-size: 0.8em;
            color: #8b4513;
        }
        
        .dayun-item .shishen-name {
            font-size: 0.9em;
            font-weight: bold;
            color: #667eea;
            margin-bottom: 5px;
            padding: 2px 5px;
            background-color: #e3f2fd;
            border-radius: 3px;
            display: inline-block;
        }
        
        .dayun-item .shiergong-status {
            font-size: 0.8em;
            font-weight: bold;
            color: #4caf50;
            margin-top: 5px;
            padding: 2px 5px;
            background-color: #e8f5e8;
            border-radius: 3px;
            display: inline-block;
        }
        
        .shensha-grid {
            display: grid;
            grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
            gap: 10px;
        }
        
        .shensha-item {
            background: #f5f7fa;
            padding: 12px;
            border-radius: 8px;
            display: flex;
            justify-content: space-between;
        }
        
        .shensha-item .name {
            font-weight: bold;
            color: #333;
        }
        
        .shensha-item .value {
            color: #764ba2;
        }
        
        /* 神煞信息显示样式 - 每个柱各占一行 */
        .shensha-columns {
            display: flex;
            flex-direction: column;
            gap: 15px;
            margin: 15px 0;
        }
        
        .shensha-column {
            background: #fffaf0;
            padding: 15px;
            border: 1px solid #d4af37;
            border-radius: 5px;
            text-align: left;
            box-shadow: 0 2px 5px rgba(212, 175, 55, 0.1);
            width: 100%;
        }
        
        .shensha-column h4 {
            color: #8b0000;
            margin-bottom: 10px;
            font-size: 1em;
            font-weight: bold;
        }
        
        .shensha-column .shensha-item {
            background: #f5f5dc;
            padding: 8px;
            border-radius: 3px;
            margin: 5px 5px 5px 0;
            font-size: 0.9em;
            color: #8b4513;
            font-weight: bold;
            display: inline-block;
        }
        
        .error-message {
            color: #e53935;
            text-align: center;
            padding: 20px;
            font-weight: bold;
        }
        
        .info-row {
            display: flex;
            flex-direction: column;
            gap: 10px;
            margin-bottom: 15px;
        }
        
        .info-item {
            padding: 12px;
            background: #fffaf0;
            border: 1px solid #d4af37;
            border-radius: 5px;
            display: flex;
            align-items: center;
        }
        
        .info-item strong {
            color: #8b0000;
            margin-right: 15px;
            min-width: 80px;
            font-weight: bold;
        }
        
        .info-item strong {
            color: #667eea;
            margin-right: 10px;
        }
        
        .loading {
            display: none;
            text-align: center;
            padding: 20px;
        }
        
        .loading.active {
            display: block;
        }
        
        .spinner {
            border: 4px solid #f3f3f3;
            border-top: 4px solid #667eea;
            border-radius: 50%;
            width: 40px;
            height: 40px;
            animation: spin 1s linear infinite;
            margin: 0 auto;
        }
        
        @keyframes spin {
            0% { transform: rotate(0deg); }
            100% { transform: rotate(360deg); }
        }
        
        @media (max-width: 768px) {
            .cangan-row, .shishen-row {
            display: flex;
            justify-content: center;
            margin: 2px 0;
        }
            /* 手机端旧样式已废弃 */
            
            /* 手机端出生信息布局调整 */
            .info-row {
                gap: 8px;
            }
            
            .info-item {
                padding: 10px;
            }
            
            .info-item strong {
                min-width: 70px;
                margin-right: 10px;
            }
            
            .zhu-item {
                padding: 10px;
            }
            
            .zhu-item .ganzhi {
                font-size: 1.5em;
                margin: 10px 0;
            }
            
            .zhu-item .gan, .zhu-item .zhi {
                font-size: 2em;
            }
            
            .zhu-item .gan-label {
                font-size: 0.4em;
            }
            
            .zhu-item.rizhu .gan-label {
                font-size: 0.5em;
                padding: 2px 8px;
            }
            
            .zhu-item .nayin-label {
                font-size: 0.35em;
            }
            
            .zhu-item .nayin-header {
                font-size: 0.7em;
                padding: 1px 6px;
                border-radius: 8px;
            }
            
            /* 手机端空亡信息样式 */
            .zhu-item .kongwang-label {
                font-size: 0.6em;
                padding: 2px 4px;
                border-radius: 6px;
                margin: 5px 0;
                display: block;
                text-align: center;
                width: 100%;
            }
            
            /* 年柱颜色 */
            .zhu-item:nth-child(1) .nayin-header {
                color: #d9534f; /* 红色 */
                background-color: #fdf4f4;
            }
            
            .zhu-item:nth-child(1) .gan-label {
                color: #d9534f; /* 红色 */
            }
            
            /* 月柱颜色 */
            .zhu-item:nth-child(2) .nayin-header {
                color: #5cb85c; /* 绿色 */
                background-color: #f5fdf4;
            }
            
            .zhu-item:nth-child(2) .gan-label {
                color: #5cb85c; /* 绿色 */
            }
            
            /* 日柱颜色 */
            .zhu-item:nth-child(3) .nayin-header {
                color: #667eea; /* 蓝色 */
                background-color: #f4f7fd;
            }
            
            .zhu-item:nth-child(3) .gan-label {
                color: #667eea; /* 蓝色 */
            }
            
            /* 时柱颜色 */
            .zhu-item:nth-child(4) .nayin-header {
                color: #f0ad4e; /* 橙色 */
                background-color: #fdf8f4;
            }
            
            .zhu-item:nth-child(4) .gan-label {
                color: #f0ad4e; /* 橙色 */
            }
            
            .cangan-shishen-display {
                font-size: 0.6em;
            }
            
            .wuxing-grid {
                grid-template-columns: repeat(5, 1fr);
            }
            
            /* 手机端流年显示优化 */
            .liunian-container {
                overflow-x: auto;
                -webkit-overflow-scrolling: touch;
            }
            
            .liunian-container > div {
                flex-wrap: nowrap;
            }
            
            .liunian-container > div > div {
                flex: 0 0 auto;
                min-width: 80px;
                width: 80px;
            }
            
            /* 大运列表基础样式 */
            .dayun-list {
                display: grid;
                grid-template-columns: repeat(auto-fill, minmax(100px, 1fr));
                gap: 8px;
            }
            
            /* 手机端标题字体大小调整 */
            .header p {
                font-size: 0.8rem;
            }
        }
        
        /* 超小屏幕优化 */
        @media (max-width: 480px) {
            /* 超小屏幕旧样式已废弃 */
            
            .zhu-item {
                padding: 8px;
            }
            
            .zhu-item .ganzhi {
                font-size: 1.2em;
                margin: 8px 0;
            }
            
            .zhu-item .gan, .zhu-item .zhi {
                font-size: 1.5em;
            }
            
            .zhu-item .gan-label {
                font-size: 0.35em;
            }
            
            .zhu-item.rizhu .gan-label {
                font-size: 0.4em;
                padding: 1px 6px;
            }
            
            .zhu-item .nayin-label {
                font-size: 0.3em;
            }
            
            .zhu-item .nayin-header {
                font-size: 0.6em;
                padding: 1px 4px;
                border-radius: 6px;
            }
            
            /* 超小屏幕空亡信息样式 */
            .zhu-item .kongwang-label {
                font-size: 0.5em;
                padding: 1px 3px;
                border-radius: 5px;
            }
            
            /* 年柱颜色 */
            .zhu-item:nth-child(1) .nayin-header {
                color: #d9534f; /* 红色 */
                background-color: #fdf4f4;
            }
            
            .zhu-item:nth-child(1) .gan-label {
                color: #d9534f; /* 红色 */
            }
            
            /* 月柱颜色 */
            .zhu-item:nth-child(2) .nayin-header {
                color: #5cb85c; /* 绿色 */
                background-color: #f5fdf4;
            }
            
            .zhu-item:nth-child(2) .gan-label {
                color: #5cb85c; /* 绿色 */
            }
            
            /* 日柱颜色 */
            .zhu-item:nth-child(3) .nayin-header {
                color: #667eea; /* 蓝色 */
                background-color: #f4f7fd;
            }
            
            .zhu-item:nth-child(3) .gan-label {
                color: #667eea; /* 蓝色 */
            }
            
            /* 时柱颜色 */
            .zhu-item:nth-child(4) .nayin-header {
                color: #f0ad4e; /* 橙色 */
                background-color: #fdf8f4;
            }
            
            .zhu-item:nth-child(4) .gan-label {
                color: #f0ad4e; /* 橙色 */
            }
            
            .cangan-shishen-display {
                font-size: 0.5em;
            }
        }
        
        /* 针对360px-400px超小屏幕的专门优化 */
        @media (max-width: 400px) {
            .sizhu-display {
                display: flex;
                flex-direction: column;
                gap: 8px;
            }
            
            .zhu-item {
                display: flex;
                flex-direction: row;
                justify-content: space-between;
                align-items: center;
                padding: 6px 10px;
                min-width: 0; /* 允许元素收缩 */
            }
            
            .zhu-item h4 {
                font-size: 12px;
                min-width: 40px;
                margin: 0;
                flex-shrink: 0; /* 防止标题收缩 */
            }
            
            .zhu-item .ganzhi {
                display: flex;
                flex-direction: row;
                align-items: center;
                gap: 5px;
                font-size: 1.1em;
                margin: 0;
                flex-shrink: 0; /* 防止干支收缩 */
            }
            
            .zhu-item .gan, .zhu-item .zhi {
                font-size: 1.3em;
                margin: 0;
            }
            
            .zhu-item .gan-label, .zhu-item .zhi-label {
                font-size: 0.3em;
            }
            
            .zhu-item .nayin-header {
                font-size: 0.5em;
                padding: 1px 3px;
                border-radius: 4px;
                min-width: 50px;
                text-align: center;
                flex-shrink: 0; /* 防止纳音收缩 */
            }
            
            .zhu-item .kongwang-label {
                font-size: 0.4em;
                padding: 1px 2px;
                border-radius: 3px;
                flex-shrink: 0; /* 防止空亡标签收缩 */
            }
            
            .cangan-shishen-display {
                font-size: 0.4em;
                min-width: 60px;
                text-align: right;
                flex-shrink: 0; /* 防止藏干十神显示收缩 */
            }
            
            .cangan-row, .shishen-row {
                gap: 2px;
                justify-content: flex-end; /* 右对齐 */
            }
            
            .cangan-item, .shishen-item {
                min-width: 15px;
                padding: 0 1px;
            }
            
            /* 确保所有内容都不会超出容器 */
            .zhu-item .ganzhi,
            .zhu-item .nayin-header,
            .zhu-item .kongwang-label,
            .cangan-shishen-display {
                white-space: nowrap;
                overflow: hidden;
                text-overflow: ellipsis;
            }
        }
        /* 版权信息样式 */
        .footer {
            background: linear-gradient(135deg, #d4af37 0%, #c5a028 100%);
            color: #fff;
            text-align: center;
            padding: 40px 20px 30px;
            margin: 50px auto 0;
            border-top: 2px solid #c5a028;
            max-width: 800px;
            border-radius: 10px;
            box-shadow: 0 4px 12px rgba(212, 175, 55, 0.3);
        }
        
        .footer-copyright {
            font-size: 1.1em;
            font-weight: 600;
            margin-bottom: 20px;
            letter-spacing: 1px;
            color: #fff;
        }
        
        .footer-slogan {
            max-width: 600px;
            margin: 0 auto 20px;
            padding: 15px 20px;
            background: rgba(255, 255, 255, 0.15);
            border-radius: 8px;
            border: 1px solid rgba(255, 255, 255, 0.2);
            line-height: 1.8;
            font-size: 0.95em;
            color: #fff;
        }
        
        .footer-icp {
            font-size: 0.9em;
            margin-top: 15px;
            color: rgba(255, 255, 255, 0.95);
        }
        
        .footer-icp a {
            color: rgba(255, 255, 255, 0.95);
            text-decoration: none;
            transition: color 0.3s ease;
        }
        
        .footer-icp a:hover {
            color: #fff;
        }
        
        /* 移动端版权样式优化 */
        @media (max-width: 768px) {
            .footer {
                padding: 30px 15px 20px;
                margin: 30px 10px 0;
                border-radius: 8px;
            }
            
            .footer-copyright {
                font-size: 1em;
            }
            
            .footer-slogan {
                font-size: 0.85em;
                padding: 12px 15px;
            }
            
            .footer-icp {
                font-size: 0.8em;
            }
        }
        
        @media (max-width: 480px) {
            .footer {
                margin: 20px 5px 0;
                padding: 25px 10px 15px;
            }
        }
        @media (max-width: 360px) {
            .zhu-item {
                padding: 5px 8px;
            }
            
            .zhu-item h4 {
                font-size: 11px;
                min-width: 35px;
            }
            
            .zhu-item .ganzhi {
                font-size: 1em;
            }
            
            .zhu-item .gan, .zhu-item .zhi {
                font-size: 1.2em;
            }
            
            .zhu-item .nayin-header {
                font-size: 0.45em;
                min-width: 45px;
            }
            
            .cangan-shishen-display {
                font-size: 0.35em;
                min-width: 50px;
            }
            
            /* 进一步压缩元素以适应最小屏幕 */
            .zhu-item .gan-label, .zhu-item .zhi-label {
                font-size: 0.25em;
            }
            
            .zhu-item .kongwang-label {
                font-size: 0.35em;
            }
        }