.logo-container {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 1px 0;
    margin-bottom: 0;
    background: #cdd496;
    box-shadow: none;
    transition: background 0.3s;
}
.site-logo-left {
    width: 36%;
    height: auto;
    display: block;
    margin: 0;
    max-width: none;
}
.site-logo-right {
    width: 18%;
    height: auto;
    display: block;
    margin: 0;
    max-width: none;
}
.lottery-selector {
    display: flex;
    flex-direction: column;
    gap: 10px;
    margin: -11px 0 0;
    padding: 0;
}
.selector-buttons {
    display: flex;
    flex-wrap: nowrap;
}
.selector-buttons.capsule-style {
    gap: 0;
    background: transparent;
    border-radius: 6px;
    padding: 0;
    border: 1px solid #e0e0e0;
    overflow: hidden;
}
.selector-btn {
    flex: 1 1 0%;
    cursor: pointer;
    text-align: center;
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
    min-height: 36px;
}
.selector-btn.capsule-btn {
    border: none;
    font-weight: 700;
    transition: all 0.2s ease;
    font-size: 0.75rem;
    padding: 8px 10px;
}
.selector-btn.capsule-btn:first-child {
    border-radius: 4px 0 0 4px;
}
.selector-btn.capsule-btn:last-child {
    border-radius: 0 4px 4px 0;
}
.selector-btn:hover,
.selector-btn.capsule-btn:hover:not(.active) {
    background: #e0e0e0;
    color: #222;
}
.selector-btn.active,
.selector-btn.capsule-btn.active {
    background: #cdd496;
    color: #333;
    border-color: #cdd496;
}
.selector-btn.capsule-btn:not(.active) {
    background: #e2e8c8;
    color: #666;
}
.selector-btn.capsule-btn:hover:not(.active) {
    background: #e2e8c8;
    color: #333;
}
.selector-btn.active:hover,
.selector-btn.capsule-btn.active:hover {
    background: #cdd496;
    color: #333;
}
.lottery-result-block {
    background: transparent;
    margin: 0 16px;
    padding: 0;
    border-radius: 0;
    box-shadow: none;
    border: none;
}
.lottery-result-header {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin: 0;
    padding: 0;
}
.lottery-title {
    text-align: center;
    margin-bottom: 4px;
}
.lottery-name {
    font-size: 1.5rem;
    font-weight: 900;
    color: #333;
    line-height: 1.2;
    text-align: center;
}
.lottery-info-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0 8px;
    gap: 0;
    font-size: 0.95rem;
    font-weight: 400;
    color: #333;
}
.issue-info {
    text-align: left;
    flex: 1;
    letter-spacing: 0;
    word-spacing: 0;
    font-family: inherit;
    font-weight: 400;
}
.issue-info span {
    letter-spacing: 0;
    word-spacing: 0;
    font-family: inherit;
    font-weight: 400;
}
.issue-number {
    font-weight: 500;
    color: #ff4d4f;
    font-size: 0.95rem;
}
.history-link {
    flex-shrink: 0;
}
.lottery-numbers-display {
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 15px 0;
    gap: 6px;
    flex-wrap: nowrap;
    position: relative;
    z-index: 1;
    padding: 0;
    width: 100%;
    max-width: 100%;
}
.normal-numbers {
    display: flex;
    gap: 4px;
    flex-wrap: nowrap;
    justify-content: center;
    padding: 0;
    margin: 0;
    min-width: 0;
    flex-shrink: 0;
}
.number-ball {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    position: relative;
    margin: 0;
    flex-shrink: 0;
    transition: all 0.2s ease;
}
.ball-image-container {
    position: relative;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 6px;
}
.ball-image {
    width: 100%;
    height: 100%;
    object-fit: contain;
    border-radius: 50%;
    box-shadow: 0 2px 8px #00000026;
    transition: all 0.2s ease;
}
.special-ball-image {
    transform: scale(1.1);
    z-index: 2;
}
.ball-number-overlay {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-size: 1.1rem;
    font-weight: 700;
    color: #000;
    text-shadow: 0 1px 2px rgba(255, 255, 255, 0.8);
    z-index: 11;
    line-height: 1;
}
.ball-zodiac {
    position: absolute;
    left: 50%;
    top: 100%;
    transform: translate(-50%) translateY(8px);
    background: #f6f6f6;
    color: #666;
    font-size: 0.7rem;
    font-weight: 500;
    border-radius: 4px;
    padding: 0 4px;
    box-shadow: 0 2px 6px #0000001a;
    white-space: nowrap;
    z-index: 3;
    min-width: 24px;
    text-align: center;
    border: 1px solid #e0e0e0;
}
.refresh-text {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    margin: -7px -4px;
    cursor: pointer;
    color: red;
    font-size: 1rem;
    line-height: 1;
    background-color: #ff0;
    padding: 4px 8px;
    border-radius: 4px;
    min-height: 40px;
    align-self: flex-end;
}

.text-announcement-section {
    background: transparent;
    margin: 0 0 12px;
    padding: 0;
    box-shadow: none;
    transition: background 0.3s;
    overflow: hidden;
}
.announcement-container {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 12px 16px;
    background: #cdd496;
}
.announcement-icon {
    flex-shrink: 0;
    color: #ff4d4f;
    font-size: 1.2rem;
}
.announcement-text-container {
    flex: 1 1 0%;
    overflow: hidden;
    position: relative;
}
.announcement-text {
    display: inline-block;
    white-space: nowrap;
    color: #333;
    font-size: 0.95rem;
    font-weight: 500;
    animation: scroll-text 60s linear infinite;
}
@keyframes scroll-text {
    0% {
        transform: translate(100%);
    }
    to {
        transform: translate(-100%);
    }
}

.number-ball:hover .ball-image {
    transform: scale(1.1);
    box-shadow: 0 4px 16px #409eff2e;
    z-index: 10;
}
.history-link {
    color: #409eff;
    font-size: 0.95rem;
    font-weight: 400;
    text-align: right;
    text-decoration: underline;
    background: transparent;
    border: 0;
    border-radius: 0;
    padding: 0;
    cursor: pointer;
    margin-left: auto;
}
.history-link:hover {
    color: #409eff;
    text-decoration: underline;
}
@media (max-width: 600px) {
    .text-announcement-section {
        margin: 0 4px 12px;
        border-radius: 6px;
    }
}
@media (max-width: 480px) and (min-width: 381px) {
    .lottery-numbers-display {
        transform: scale(0.9);
        transform-origin: center;
        gap: 5px;
    }
    .normal-numbers {
        gap: 3px;
    }
    .ball-image-container {
        width: 40px;
        height: 40px;
    }
    .ball-number-overlay {
        font-size: 1rem;
    }
    .refresh-text {
        font-size: 0.8rem;
        min-height: 35px;
    }
    .ball-zodiac {
        font-size: 0.7rem;
    }
}
@media (max-width: 380px) {
    .lottery-numbers-display {
        gap: 4px;
        padding: 0 8px;
        flex-wrap: wrap;
        justify-content: center;
    }
    .normal-numbers {
        gap: 3px;
        flex-wrap: wrap;
        justify-content: center;
    }
    .ball-image-container {
        width: 35px;
        height: 35px;
        margin-bottom: 4px;
    }
    .ball-number-overlay {
        font-size: 0.9rem;
    }
    .refresh-text {
        font-size: 0.7rem;
        margin: 0 4px;
        min-height: 32px;
    }
    .ball-zodiac {
        font-size: 0.6rem;
        padding: 2px 4px;
        min-width: 20px;
    }
}
@media (max-width: 320px) {
    .lottery-numbers-display {
        gap: 3px;
        padding: 0 4px;
    }
    .normal-numbers {
        gap: 2px;
    }
    .ball-image-container {
        width: 30px;
        height: 30px;
    }
    .ball-number-overlay {
        font-size: 0.8rem;
    }
    .refresh-text {
        font-size: 0.6rem;
        min-height: 28px;
    }
    .ball-zodiac {
        font-size: 0.5rem;
        padding: 1px 3px;
        min-width: 18px;
    }
}
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}
html,
body,
#app {
width: 100%;
min-width: 0;
min-height: 100%;
overflow-x: hidden;
}
body {
    font-family:
    -apple-system,
    BlinkMacSystemFont,
    Segoe UI,
    Roboto,
    Helvetica Neue,
    Arial,
    sans-serif;
    line-height: 1.6;
    color: #333;
    background: #fff;
    min-height: 100vh;
    transition: all 0.3s ease;
    max-width: 480px !important;
    width: 100% !important;
    margin: 0 auto !important;
}
@keyframes spin {
    0% {
        transform: rotate(0);
    }
    to {
        transform: rotate(360deg);
    }
}
.numbers-display {
    gap: 0.5rem;
    flex-wrap: wrap;
}
@keyframes slideIn {
    0% {
        transform: translate(100%);
        opacity: 0;
    }
    to {
        transform: translate(0);
        opacity: 1;
    }
}
@media (max-width: 768px) {
    .numbers-display {
        justify-content: center;
    }
}
::-webkit-scrollbar {
    width: 8px;
    height: 8px;
}
::-webkit-scrollbar-track {
    background: #0000001a;
    border-radius: 4px;
}
::-webkit-scrollbar-thumb {
    background: #3498db80;
    border-radius: 4px;
}
::-webkit-scrollbar-thumb:hover {
    background: #3498dbb3;
}

.combo-group-block {
    border-radius: 10px;
    margin-bottom: 18px;
    box-shadow: 0 2px 8px #00000014;
    padding: 0 0 8px;
    transition: background 0.3s;
}
.combo-group-header {
    display: block;
    font-size: 1.28rem;
    font-weight: 800;
    border-radius: 10px 10px 0 0;
    padding: 0;
    border-bottom: 1px solid #eee;
    margin-bottom: 0;
    margin-top: 0;
    color: #222;
    transition:
    background 0.3s,
    color 0.3s;
    text-align: center;
}
.issue-number {
    color: #d90000;
    font-weight: 700;
}
.combo-content {
    padding: 16px;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
}
.issue-combo-section {
    margin-bottom: 20px;
}
.main-zha-row {
    text-align: center;
    margin-bottom: 1px;
    padding: -9px 0;
    border-bottom: -9px solid #eee;
}
.main-zha-text {
    font-size: 1rem;
    font-weight: 700;
    color: #333;
}
.combo-row {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    margin-bottom: 8px;
    font-size: clamp(0.8rem, 2.5vw, 0.95rem);
    line-height: 1.4;
    min-width: 0;
    flex-wrap: nowrap;
}
.issue-label {
    font-weight: 700;
    color: #333;
    margin-right: 0;
    min-width: clamp(60px, 15vw, 80px);
    text-align: left;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-shrink: 0;
}
.issue-label .issue-number {
    color: #d90000;
    font-weight: 700;
}
.combo-data-text {
    color: #d90000;
    margin-right: 8px;
    min-width: 20px;
    font-weight: 700;
    flex-shrink: 0;
    white-space: nowrap;
}
.combo-data-text.hit {
    background: #ffeb3b !important;
    color: #333 !important;
    padding: 0;
    border-radius: 3px;
    font-weight: 700;
}
.combo-selection {
    color: #1890ff;
    font-weight: 500;
    margin-right: 0;
    flex-shrink: 0;
    white-space: nowrap;
}
.number-display {
    display: flex;
    flex-wrap: nowrap;
    gap: 1px;
    justify-content: flex-start;
    align-items: center;
    overflow-x: auto;
    white-space: nowrap;
    min-width: 0;
    flex-shrink: 1;
}
.number-item {
    color: #333;
    font-size: clamp(0.7rem, 2vw, 0.85rem);
    font-weight: 500;
    text-align: center;
    display: inline-block;
    margin-right: 4px;
    flex-shrink: 0;
    min-width: fit-content;
}
.number-item.hit {
    font-weight: 700;
    background: #ffeb3b !important;
    padding: 0;
    border-radius: 3px;
}
.combo-group-block:has(.combo-content) .number-item.hit {
    color: #333 !important;
}
.zodiac-legend {
    display: flex;
    justify-content: space-between;
    margin-top: -17px;
    padding: 8px 0;
    border-top: 1px solid #eee;
}
.legend-item {
    padding: 4px 8px;
    border-radius: 4px;
}
.legend-item.qin {
    color: #d90000;
}
.legend-item.qi {
    color: #1890ff;
}
.legend-item.shu {
    color: #52c41a;
}
.legend-item.hua {
    color: #eb2f96;
}
.head-char {
    color: inherit;
}
.hit-zodiac-char {
    background: #ff0;
    color: red;
    padding: 0;
    border-radius: 2px;
    font-weight: 700;
    margin: 0 1px;
}
.combo-group-block:has(.combo-content) .combo-row {
    border-bottom: 1px solid blue;
    padding-bottom: 4px;
}
.combo-group-block:has(.combo-content) {
    background: #e2e8c8 !important;
}
.combo-group-block:has(.combo-content) .combo-group-header {
    background: #cdd496 !important;
}
.numbers-row {
    margin-top: 8px;
    padding: 8px 0;
}
.numbers-display {
    display: block;
    width: 100%;
    line-height: 1.6;
}
.numbers-display .number-item {
    display: inline !important;
    font-size: 0.9rem;
    margin-right: 2px;
    background: transparent !important;
    padding: 0 !important;
    border-radius: 0 !important;
    width: auto !important;
    text-align: left !important;
    border: none !important;
    color: #1890ff !important;
}
.numbers-display .number-item.hit {
    background: #ffeb3b !important;
    font-weight: 700;
    padding: 0 !important;
    border-radius: 3px !important;
}
.number-row {
    margin-bottom: 4px;
}
.number-row:last-child {
    margin-bottom: 0;
}
.zodiac-data {
    color: #333;
    font-weight: 500;
    margin-left: 8px;
}
.tail-data,
.season-data,
.pingte-data,
.pingma-tail-data,
.tiandixiao-data,
.wuxing-data {
    color: #333;
    font-weight: 500;
    margin-left: 8px;
}
.legend-item {
    font-weight: 500;
    font-size: 0.85rem;
    line-height: 1.2;
    display: inline-block;
    margin-bottom: 2px;
}
.legend-item.wuxing-jin {
    color: gold;
}
.legend-item.wuxing-mu {
    color: #32cd32;
}
.legend-item.wuxing-shui {
    color: #00bfff;
}
.legend-item.wuxing-huo {
    color: #ff4500;
}
.legend-item.wuxing-tu {
    color: #d2691e;
}

.sites-navigation {
    padding: 16px;
    background: #fff;
    width: 100%;
    min-height: auto;
    border-radius: 8px;
    box-shadow: 0 1px 3px #0000001a;
}
.sites-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 8px;
    width: 100%;
    max-width: 100%;
    grid-auto-rows: 1fr;
}
.site-card {
    background: linear-gradient(135deg, #f8f9fa, #e9ecef);
    border: 1px solid #dee2e6;
    border-radius: 8px;
    padding: 12px 8px;
    text-align: center;
    cursor: pointer;
    transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
    font-size: 13px;
    font-weight: 500;
    color: #495057;
    min-height: 45px;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 1px 3px #0000000d;
    width: 100%;
    height: 100%;
    box-sizing: border-box;
    -webkit-user-select: none;
    user-select: none;
    outline: none;
}
.site-card:hover {
    background: linear-gradient(135deg, #e9ecef, #dee2e6);
    transform: translateY(-2px);
    box-shadow: 0 4px 12px #00000026;
    border-color: #adb5bd;
}
.site-card:active {
    transform: translateY(0);
    box-shadow: 0 2px 6px #0000001a;
}
.site-card:focus {
    outline: 2px solid #007bff;
    outline-offset: 2px;
}
.last-row-single {
    grid-column: 2;
}
@keyframes spin-4890e017 {
    0% {
        transform: rotate(0);
    }
    to {
        transform: rotate(360deg);
    }
}
@media (max-width: 768px) {
    .sites-navigation {
        padding: 12px;
    }
    .sites-grid {
        gap: 6px;
    }
    .site-card {
        padding: 10px 6px;
        font-size: 12px;
        min-height: 40px;
    }
}
@media (max-width: 480px) {
    .sites-navigation {
        padding: 8px;
    }
    .sites-grid {
        gap: 4px;
    }
    .site-card {
        padding: 8px 4px;
        font-size: 11px;
        min-height: 35px;
    }
}
@media (max-width: 360px) {
    .sites-grid {
        gap: 3px;
    }
    .site-card {
        padding: 6px 3px;
        font-size: 10px;
        min-height: 30px;
    }
}
@media (prefers-color-scheme: dark) {
    .sites-navigation {
        background: #2d3748;
        box-shadow: 0 1px 3px #0000004d;
    }
    .site-card {
        background: linear-gradient(135deg, #4a5568, #2d3748);
        border-color: #4a5568;
        color: #e2e8f0;
    }
    .site-card:hover {
        background: linear-gradient(135deg, #2d3748, #1a202c);
        border-color: #718096;
    }
}

.zodiac-database-panel {
    width: min(100% - 20px, 480px);
    max-width: 480px;
    margin: 20px auto 18px;
    padding: 15px;
    background: #f8f9fa;
    border-radius: 10px;
    border: 2px solid #f2d5d5;
    box-sizing: border-box;
    overflow-x: hidden;
    clear: both;
}
.database-header {
    text-align: center;
    margin-bottom: 20px;
}
.database-header h3 {
    color: #333;
    font-size: 1.8rem;
    margin-bottom: 5px;
    font-weight: 700;
}
.database-header h4 {
    color: #666;
    font-size: 1.2rem;
    margin-bottom: 10px;
}
.database-section {
    margin-bottom: 20px;
}
.database-section h4 {
    color: #333;
    font-size: 1.3rem;
    margin-bottom: 15px;
    padding-bottom: 5px;
    border-bottom: 2px solid #f2d5d5;
    font-weight: 700;
}
.section-title-center {
    text-align: center;
}
.zodiac-table {
    width: 100%;
    background: #fff;
    border: solid 1px #d8ccb4;
    padding: 15px;
    font:
    400 14px/1.5 微软雅黑,
    Helvetica;
    color: #000;
    line-height: 1.75;
    font-family: 微软雅黑;
    word-break: break-all;
    border-collapse: collapse;
    border-spacing: 0;
    margin: 0;
    font-size: 100%;
    box-sizing: border-box;
    word-wrap: break-word;
    overflow: hidden;
}
.zodiac-table-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 10px;
    width: 100%;
}
.zodiac-table-cell {
    background: #fff;
    border: solid 1px #d8ccb4;
    padding: 10px;
    text-align: center;
    border-radius: 4px;
    box-shadow: 0 1px 3px #0000001a;
}
.zodiac-cell-header {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    margin-bottom: 10px;
    flex-wrap: wrap;
}
.zodiac-image {
    width: 35px;
    height: 35px;
    object-fit: contain;
}
.zodiac-name {
    font-weight: 700;
    color: #000;
    font-size: 14px;
    font-family: 微软雅黑;
}
.zodiac-conflict {
    color: #666;
    font-size: 12px;
    font-family: 微软雅黑;
}
.zodiac-cell-numbers {
    display: flex;
    flex-wrap: nowrap;
    gap: 1px;
    justify-content: center;
    align-items: center;
    overflow: hidden;
    width: 100%;
}
.number-box {
    padding: 1px 2px;
    border-radius: 50%;
    font-size: 9px;
    font-weight: 700;
    color: #fff;
    min-width: 14px;
    width: 18px;
    height: 18px;
    text-align: center;
    font-family: 微软雅黑;
    line-height: 1.1;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
}
.color-red {
    background: red;
}
.color-blue {
    background: #36f;
}
.color-green {
    background: #093;
}
.elements-table,
.wave-colors-table,
.parity-table,
.zodiac-attributes-table {
    background: #fff;
    border: 1px solid #ddd;
    border-radius: 4px;
    overflow: hidden;
}
.element-row,
.wave-row,
.parity-row,
.attribute-row {
    display: flex;
    align-items: center;
    border-bottom: 1px solid #eee;
    min-height: 40px;
}
.element-row:last-child,
.wave-row:last-child,
.parity-row:last-child,
.attribute-row:last-child {
    border-bottom: none;
}
.element-name-cell,
.wave-name-cell,
.parity-name-cell {
    width: 60px;
    padding: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-right: 1px solid #eee;
}
.element-name,
.wave-name,
.parity-name {
    font-weight: 700;
    font-size: 16px;
    font-family: 微软雅黑;
}
.wave-name,
.parity-name {
    color: #333;
}
.element-metal {
    color: gold;
}
.element-wood {
    color: #228b22;
}
.element-water {
    color: #4169e1;
}
.element-fire {
    color: #dc143c;
}
.element-earth {
    color: #d2691e;
}
.element-numbers-cell,
.wave-numbers-cell,
.parity-numbers-cell {
    flex: 1;
    padding: 10px;
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
    align-items: center;
}
.element-number-box,
.wave-number-box,
.parity-number-box {
    width: 24px;
    height: 24px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 11px;
    font-weight: 700;
    color: #fff;
    font-family: 微软雅黑;
}
.attribute-row {
    min-height: 35px;
}
.attribute-label-cell {
    width: 80px;
    padding: 8px 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-right: 1px solid #eee;
    background: #f8f9fa;
}
.attribute-label {
    font-weight: 700;
    color: #06c;
    font-size: 14px;
    font-family: 微软雅黑;
}
.attribute-value-cell {
    flex: 1;
    padding: 8px 10px;
    display: flex;
    align-items: center;
}
.attribute-value {
    color: #333;
    font-size: 14px;
    font-family: 微软雅黑;
    line-height: 1.4;
}
.sub-label {
    color: #06c;
    font-weight: 700;
}
@media (max-width: 768px) {
    .zodiac-table-grid {
        grid-template-columns: repeat(3, 1fr);
        gap: 5px;
    }
    .zodiac-table {
        padding: 10px;
    }
    .zodiac-table-cell {
        padding: 6px;
        min-width: 0;
    }
    .elements-table,
    .wave-colors-table,
    .parity-table,
    .zodiac-attributes-table {
        margin: 0 10px;
    }
    .element-name-cell,
    .wave-name-cell,
    .parity-name-cell {
        width: 50px;
        padding: 8px;
    }
    .element-numbers-cell,
    .wave-numbers-cell,
    .parity-numbers-cell {
        padding: 8px;
    }
    .element-number-box,
    .wave-number-box,
    .parity-number-box {
        width: 20px;
        height: 20px;
        font-size: 10px;
    }
    .attribute-label-cell {
        width: 70px;
        padding: 6px 8px;
    }
    .attribute-value-cell {
        padding: 6px 8px;
    }
    .attribute-label,
    .attribute-value,
    .sub-label {
        font-size: 12px;
    }
    .zodiac-database-panel {
        padding: 15px;
    }
    .zodiac-name {
        font-size: 12px;
    }
    .zodiac-conflict {
        font-size: 10px;
    }
    .number-box {
        padding: 1px;
        font-size: 8px;
        min-width: 12px;
        width: 16px;
        height: 16px;
    }
}

@media (max-width: 420px) {
    .zodiac-database-panel {
        width: calc(100% - 12px);
        margin-top: 14px;
        margin-bottom: 16px;
        padding: 8px;
        border-radius: 8px;
    }

    .database-header {
        margin-bottom: 12px;
    }

    .database-header h3 {
        font-size: 1.25rem;
    }

    .database-header h4,
    .database-section h4 {
        font-size: 1rem;
    }

    .database-section {
        margin-bottom: 14px;
    }

    .zodiac-table {
        padding: 6px;
    }

    .zodiac-table-grid {
        gap: 4px;
    }

    .zodiac-table-cell {
        padding: 5px 3px;
    }

    .zodiac-cell-header {
        gap: 3px;
        margin-bottom: 6px;
    }

    .zodiac-image {
        width: 26px;
        height: 26px;
    }

    .zodiac-cell-numbers {
        gap: 1px;
    }

    .number-box {
        width: 14px;
        height: 14px;
        min-width: 14px;
        font-size: 7px;
    }

    .elements-table,
    .wave-colors-table,
    .parity-table,
    .zodiac-attributes-table {
        margin: 0;
    }

    .element-name-cell,
    .wave-name-cell,
    .parity-name-cell {
        width: 42px;
        padding: 6px 4px;
    }

    .element-numbers-cell,
    .wave-numbers-cell,
    .parity-numbers-cell {
        gap: 3px;
        padding: 6px 4px;
    }

    .element-number-box,
    .wave-number-box,
    .parity-number-box {
        width: 18px;
        height: 18px;
        font-size: 9px;
    }

    .attribute-label-cell {
        width: 56px;
        padding: 6px 4px;
    }

    .attribute-value-cell {
        padding: 6px;
    }
}

.lottery-countdown-line {
    box-sizing: border-box;
    width: calc(100% - 16px);
    clear: both;
    position: relative;
    z-index: 1;
    margin: 42px auto 10px;
    padding: 7px 10px;
    border: 1px solid rgba(220, 38, 38, .14);
    border-radius: 6px;
    background: #fffaf6;
    color: #4b5563;
    font-size: 13px;
    line-height: 1.7;
}

.lottery-countdown-line .lottery-countdown-row {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    white-space: nowrap;
}

.lottery-countdown-line .lottery-countdown-value {
    color: #d60000;
    font-weight: 800;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Microsoft YaHei", Arial, sans-serif;
}

.lottery-countdown-line .lottery-countdown-clock {
    color: #d60000;
    font-weight: 900;
    font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace;
    letter-spacing: 0;
}

#ballsRow .official-drawing-ball,
#ballsRow .official-drawing-ball .ball-image-container,
#ballsRow .official-drawing-ball .ball-content,
#ballsRow .official-drawing-ball b {
animation: none !important;
opacity: 1 !important;
border-radius: 50% !important;
filter: grayscale(1) saturate(0) brightness(.92) !important;
transform: none !important;
}

#ballsRow .official-drawing-ball img.ball-bg,
#ballsRow .official-drawing-ball img.ball-image {
animation: none !important;
opacity: 1 !important;
filter: grayscale(1) saturate(0) brightness(.92) !important;
}

#ballsRow .official-drawing-ball .ball-number,
#ballsRow .official-drawing-ball .ball-number-overlay,
#ballsRow .official-drawing-ball .b-num,
#ballsRow .official-drawing-ball b {
color: #111827 !important;
font-size: clamp(15px, 4.2vw, 20px) !important;
font-weight: 900 !important;
line-height: inherit !important;
text-align: center !important;
text-shadow: 0 1px 2px rgba(255,255,255,.75) !important;
letter-spacing: 0 !important;
}

#ballsRow .official-drawing-ball .ball-zodiac,
#ballsRow .official-drawing-ball small,
#ballsRow .official-drawing-ball .other {
display: none !important;
}

@media (max-width: 380px) {
    .lottery-countdown-line {
        width: calc(100% - 10px);
        margin-top: 42px;
        padding: 6px 5px;
        font-size: 12px;
    }
}

@keyframes ballpop { 0%{transform:scale(0);opacity:0;} 60%{transform:scale(1.2);opacity:1;} 100%{transform:scale(1);opacity:1;} }
.number-ball.pop { animation: ballpop 0.4s ease-out; }
.number-ball.placeholder-ball .ball-image { filter:grayscale(1) saturate(0) brightness(.92); }
.drawing-tip { display:block; width:100%; clear:both; color:#d90000; font-weight:bold; text-align:center; padding:6px 0; }
.selector-btn { cursor:pointer; }
.banner-carousel { position:relative; overflow:hidden; }
.banner-carousel .banner-slide { display:none; }
.banner-carousel .banner-slide.active { display:block; }
.banner-carousel .banner-slide img { width:100%; display:block; }
.notice-scroll { display:inline-block; white-space:nowrap; animation:notice-marquee 60s linear infinite; }
@keyframes notice-marquee { 0%{transform:translateX(0);} 100%{transform:translateX(-50%);} }
.notice-scroll .notice-item { padding:0 40px; }
.popup-mask { position:fixed; inset:0; background:rgba(0,0,0,.5); z-index:9998; display:flex; align-items:center; justify-content:center; }
.popup-box { background:#fff; border-radius:8px; max-width:90%; width:360px; max-height:80%; overflow:auto; box-shadow:0 6px 30px rgba(0,0,0,.3); }
.popup-box .popup-head { display:flex; justify-content:space-between; align-items:center; padding:10px 14px; border-bottom:1px solid #eee; font-weight:bold; color:#d90000; }
.popup-box .popup-close { cursor:pointer; color:#999; font-size:20px; line-height:1; }
.popup-box .popup-body { padding:14px; font-size:14px; line-height:1.6; }

.lottery-result-block .lottery-countdown-line { display:flex; align-items:center; justify-content:space-between; gap:8px; padding:6px 10px 4px; }
.lottery-result-block .lottery-countdown-row { margin:0; white-space:nowrap; }
.lottery-result-block .drawing-tip { padding:4px 0 6px; }
@media (max-width:380px) {
    .lottery-result-block .lottery-countdown-line { gap:4px; padding-left:6px; padding-right:6px; font-size:12px; }
}

.cp-spacing-dasanba .custom-play-values { display:inline-flex !important; flex-wrap:wrap !important; justify-content:center; align-items:baseline; max-width:100%; min-width:0; white-space:normal !important; vertical-align:middle; }
.cp-spacing-dasanba .custom-play-token { display:inline-block !important; flex:0 0 auto; min-width:1.7em; margin:2px 3px !important; text-align:center; white-space:nowrap !important; word-break:normal; line-height:1.5; font-variant-numeric:tabular-nums; vertical-align:middle; }
.cp-spacing-dasanba .number-row, .cp-spacing-dasanba .numbers-display, .cp-spacing-dasanba .combo-row, .cp-spacing-dasanba .zodiac-data { flex-wrap:wrap !important; white-space:normal !important; min-width:0; max-width:100%; }

.pts-showcase{width:100%;max-width:760px;margin:10px auto;overflow:hidden;font-family:Arial,"Microsoft YaHei",sans-serif;line-height:1.25;box-sizing:border-box}.combo-group-block:has(.pts-showcase)>.combo-group-header,.combo-group-block:has(.pts-showcase)>.list-title{display:none!important}.pts-showcase *{box-sizing:border-box;letter-spacing:0}.pts-heading{text-align:center;font-weight:700}.pts-heading strong{display:block}.pts-heading span{display:block}.pts-table{width:100%}.pts-row{display:grid;grid-template-columns:minmax(70px,18%) minmax(0,62%) minmax(72px,20%);align-items:stretch}.pts-row>div{display:flex;align-items:center;justify-content:center;text-align:center;min-width:0;padding:10px 6px;font-size:28px;font-weight:700}.pts-value{white-space:normal}.pts-value b{font-weight:700}.pts-pick{display:inline-flex;gap:5px}.pts-zodiac{display:inline-block}.pts-pick.is-hit .pts-zodiac{color:#d71919;background:#fff600}.pts-number{color:#df2020}.pts-value em{margin-left:8px;color:#ef18d4;font-style:normal}.pts-tagline{text-align:center;padding:9px 5px;font-size:25px;font-weight:700}.pts-style-1{background:#000;color:#fff}.pts-style-1 .pts-heading{padding:8px;background:#061020}.pts-style-1 .pts-heading strong{font-size:52px}.pts-style-1 .pts-heading span{background:#fff;color:#000;font-size:31px}.pts-style-1 .pts-row>div{border:1px solid #fff}.pts-style-1 .pts-pick.is-hit .pts-zodiac{color:#df1e1e;background:#fff}.pts-style-2{background:#f500e9;color:#060006;border:4px solid #050005}.pts-style-2 .pts-heading{padding:10px 4px;color:#ffe100;background:#ed00dc;font-size:45px;text-shadow:1px 1px #000}.pts-style-2 .pts-row>div{border:3px solid #080008}.pts-style-2 .pts-status{color:#1535c4}.pts-style-3{background:#82c9e7;color:#050505}.pts-style-3 .pts-heading{padding:11px 4px;background:#10203e;color:#fff;font-size:40px;text-shadow:1px 1px #000}.pts-style-3 .pts-row>div{border:2px solid #eee}.pts-style-3 .pts-issue{color:#061ac0}.pts-style-4{background:#eee;color:#4f260f;border:5px solid #ffb4c5}.pts-style-4 .pts-heading{padding:10px 4px;background:#f10b0b;color:#ffd2dc;font-size:40px}.pts-style-4 .pts-row>div{border:5px solid #ffb4c5}.pts-style-4 .pts-issue{color:#158225}.pts-style-4 .pts-status{color:#e32828}.pts-style-5{background:#fff;color:#080808;border:2px solid #050505}.pts-style-5 .pts-heading{padding:10px 4px;background:#633415;color:#fff;font-size:45px}.pts-style-5 .pts-row>div{border:2px solid #050505}.pts-style-5 .pts-tagline{background:#eee;color:#623719;border:2px solid #050505}.pts-style-6{background:#fff;color:#df1d1d}.pts-style-6 .pts-heading{padding:10px 4px;background:#82cbea;color:#050505;font-size:38px}.pts-style-6 .pts-row>div{border:1px solid #e5e5e5}.pts-style-7{background:#0909ed;color:#ffff64;border:2px solid #ffff64}.pts-style-7 .pts-heading{padding:12px 4px;background:#0619a6;color:#fff85a;font-size:45px}.pts-style-7 .pts-row>div{border:1px solid #ffff64}.pts-style-7 .pts-value b{color:#ef3a55}.pts-style-8{background:#fff;color:#0716a1;border:1px solid #0716a1}.pts-style-8 .pts-heading{padding:12px 4px;background:#ffb6c4;font-size:43px}.pts-style-8 .pts-row>div{border:1px solid #0716a1}.pts-style-8 .pts-tagline{background:#ffb6c4;border:1px solid #0716a1}@media(max-width:480px){.pts-row{grid-template-columns:72px minmax(0,1fr) 75px}.pts-row>div{padding:8px 3px;font-size:16px}.pts-pick{gap:2px}.pts-value em{display:block;margin:3px 0 0}.pts-heading strong,.pts-style-1 .pts-heading strong{font-size:26px}.pts-heading span,.pts-style-1 .pts-heading span{font-size:18px}.pts-style-2 .pts-heading,.pts-style-3 .pts-heading,.pts-style-4 .pts-heading,.pts-style-5 .pts-heading,.pts-style-6 .pts-heading,.pts-style-7 .pts-heading,.pts-style-8 .pts-heading{font-size:24px}.pts-tagline{font-size:15px}}

.popup-box:has(.legacy-modal){width:auto!important;max-width:94vw!important;max-height:none!important;overflow:visible!important;background:transparent!important;border-radius:0!important;box-shadow:none!important;}.popup-box:has(.legacy-modal) .popup-head{display:none!important;}.popup-box:has(.legacy-modal) .popup-body{padding:0!important;line-height:normal!important;background:transparent!important;}.legacy-modal,.legacy-modal *{box-sizing:border-box;}.legacy-modal{position:relative;width:var(--legacy-modal-width);max-width:var(--legacy-modal-max-width);max-height:var(--legacy-modal-max-height);overflow:visible;background:var(--legacy-modal-background);border-radius:var(--legacy-modal-border-radius);box-shadow:var(--legacy-modal-shadow);animation:legacyModalFadeIn-7f579c3f .3s ease-out;font-family:Arial,"Microsoft YaHei",sans-serif;}@keyframes legacyModalFadeIn-7f579c3f{0%{opacity:0;transform:scale(.9) translateY(-20px);}to{opacity:1;transform:scale(1) translateY(0);}}.legacy-close-btn{position:absolute;top:var(--legacy-close-top);right:var(--legacy-close-right);z-index:3;display:flex;align-items:center;justify-content:center;width:var(--legacy-close-size);height:var(--legacy-close-size);padding:0;color:var(--legacy-close-color);font-size:var(--legacy-close-font-size);cursor:pointer;background:var(--legacy-close-background);border:0;border-radius:50%;transform:var(--legacy-close-transform);transition:all .2s;}.legacy-close-btn:hover{color:var(--legacy-close-hover-color);background:var(--legacy-close-hover-background);}.legacy-title-badge{position:relative;z-index:2;width:148px;min-height:34px;margin:0 auto 10px;pointer-events:none;}.legacy-title-badge-bg{display:block;width:100%;height:34px;background:var(--legacy-title-badge-fill);border:1px solid rgba(255,255,255,.86);border-radius:999px;box-shadow:inset 0 1px 3px rgba(255,255,255,.45),inset 0 -2px 5px rgba(45,51,62,.22),0 2px 5px rgba(0,0,0,.14);}.legacy-title-text{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:4px 18px;color:#fff;font-weight:700;line-height:1.05;text-align:center;text-shadow:var(--legacy-title-text-shadow);}.legacy-title-site{display:block;max-width:106px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:15px;}.legacy-modal-content{max-height:var(--legacy-modal-max-height);overflow-y:auto;background:var(--legacy-content-background);}.legacy-ball-card-body{padding:16px 20px 20px;}.legacy-card-group{margin-bottom:24px;padding:16px;background:var(--legacy-group-background);border:1px solid var(--legacy-group-border-color);border-radius:8px;}.legacy-card-group:last-child{margin-bottom:0;}.legacy-sixiaobama-heading{margin:-2px 0 8px;color:#d90000;font-size:22px;font-weight:800;line-height:1.2;text-align:center;}.legacy-card-title{margin-bottom:12px;color:var(--legacy-group-title-color);font-size:16px;font-weight:600;text-align:center;}.legacy-zodiac-row,.legacy-number-row{display:flex;gap:8px;justify-content:center;}.legacy-zodiac-row{margin-bottom:12px;flex-wrap:wrap;}.legacy-number-row{width:100%;max-width:376px;margin:0 auto 8px;min-width:0;flex-wrap:nowrap;gap:clamp(2px,1.6vw,8px);}.legacy-zodiac-ball{display:flex;align-items:center;justify-content:center;width:clamp(30px,9vw,42px);height:clamp(30px,9vw,42px);color:var(--legacy-zodiac-color);font-size:clamp(13px,3.5vw,16px);font-weight:600;background:var(--legacy-zodiac-background);border:2px solid var(--legacy-zodiac-border-color);border-radius:50%;transition:transform .2s;}.legacy-zodiac-ball:hover{background:var(--legacy-zodiac-hover-background);transform:scale(1.08);}.legacy-number-ball{display:flex;flex:0 0 min(40px,calc((100% - 56px)/8));align-items:center;justify-content:center;width:min(40px,calc((100% - 56px)/8));min-width:0;height:auto;aspect-ratio:1;font-size:clamp(9px,3.2vw,14px);font-weight:600;border-radius:50%;}.legacy-number-ball--image{color:#333;border:0;background-repeat:no-repeat;background-position:center;background-size:contain;text-shadow:0 0 1px rgba(255,255,255,.6);}.legacy-copy-section{margin-top:16px;text-align:center;}.legacy-copy-btn{padding:8px 16px;color:#fff;font-size:14px;cursor:pointer;background:var(--legacy-copy-background);border:0;border-radius:6px;transition:background .2s;}.legacy-copy-btn:hover{background:var(--legacy-copy-hover-background);}.legacy-empty{padding:18px 8px;text-align:center;color:var(--legacy-empty-color);background:#fff;border-radius:6px;}@media (max-width:600px){.legacy-ball-card-body{padding:16px 12px 12px;}.legacy-card-group{margin-bottom:16px;padding:12px;}}@media (max-width:480px){.legacy-title-badge{width:138px;min-height:32px;margin:0 auto 10px;}.legacy-title-badge-bg{height:32px;}.legacy-title-text{padding:4px 16px;}.legacy-title-site{max-width:98px;font-size:14px;}.legacy-card-group{margin-bottom:12px;padding:10px;}.legacy-sixiaobama-heading{font-size:21px;}.legacy-card-title{margin-bottom:10px;font-size:14px;}.legacy-copy-btn{padding:6px 12px;font-size:12px;}}
