.bkbg-sdk-wrap { padding: 28px 20px; border-radius: 16px; font-family: system-ui, -apple-system, sans-serif; text-align: center; box-sizing: border-box; } .bkbg-sdk-wrap h3.bkbg-sdk-title { font-family: var(--bksdk-tt-font-family, inherit); font-size: var(--bksdk-tt-font-size-d, 28px); font-weight: var(--bksdk-tt-font-weight, 800); font-style: var(--bksdk-tt-font-style, normal); text-decoration: var(--bksdk-tt-text-decoration, none); text-transform: var(--bksdk-tt-text-transform, none); line-height: var(--bksdk-tt-line-height-d, 1.2); letter-spacing: var(--bksdk-tt-letter-spacing-d, normal); word-spacing: var(--bksdk-tt-word-spacing-d, normal); margin: 0 0 4px; } .bkbg-sdk-wrap .bkbg-sdk-subtitle { font-family: var(--bksdk-st-font-family, inherit); font-size: var(--bksdk-st-font-size-d, 14px); font-weight: var(--bksdk-st-font-weight, 400); font-style: var(--bksdk-st-font-style, normal); text-decoration: var(--bksdk-st-text-decoration, none); text-transform: var(--bksdk-st-text-transform, none); line-height: var(--bksdk-st-line-height-d, 1.4); letter-spacing: var(--bksdk-st-letter-spacing-d, normal); word-spacing: var(--bksdk-st-word-spacing-d, normal); margin: 0 0 18px; } @media (max-width: 1024px) { .bkbg-sdk-wrap h3.bkbg-sdk-title { font-size: var(--bksdk-tt-font-size-t, var(--bksdk-tt-font-size-d, 28px)); line-height: var(--bksdk-tt-line-height-t, var(--bksdk-tt-line-height-d, 1.2)); letter-spacing: var(--bksdk-tt-letter-spacing-t, var(--bksdk-tt-letter-spacing-d, normal)); word-spacing: var(--bksdk-tt-word-spacing-t, var(--bksdk-tt-word-spacing-d, normal)); } .bkbg-sdk-wrap .bkbg-sdk-subtitle { font-size: var(--bksdk-st-font-size-t, var(--bksdk-st-font-size-d, 14px)); line-height: var(--bksdk-st-line-height-t, var(--bksdk-st-line-height-d, 1.4)); letter-spacing: var(--bksdk-st-letter-spacing-t, var(--bksdk-st-letter-spacing-d, normal)); word-spacing: var(--bksdk-st-word-spacing-t, var(--bksdk-st-word-spacing-d, normal)); } } @media (max-width: 767px) { .bkbg-sdk-wrap h3.bkbg-sdk-title { font-size: var(--bksdk-tt-font-size-m, var(--bksdk-tt-font-size-t, var(--bksdk-tt-font-size-d, 28px))); line-height: var(--bksdk-tt-line-height-m, var(--bksdk-tt-line-height-t, var(--bksdk-tt-line-height-d, 1.2))); letter-spacing: var(--bksdk-tt-letter-spacing-m, var(--bksdk-tt-letter-spacing-t, var(--bksdk-tt-letter-spacing-d, normal))); word-spacing: var(--bksdk-tt-word-spacing-m, var(--bksdk-tt-word-spacing-t, var(--bksdk-tt-word-spacing-d, normal))); } .bkbg-sdk-wrap .bkbg-sdk-subtitle { font-size: var(--bksdk-st-font-size-m, var(--bksdk-st-font-size-t, var(--bksdk-st-font-size-d, 14px))); line-height: var(--bksdk-st-line-height-m, var(--bksdk-st-line-height-t, var(--bksdk-st-line-height-d, 1.4))); letter-spacing: var(--bksdk-st-letter-spacing-m, var(--bksdk-st-letter-spacing-t, var(--bksdk-st-letter-spacing-d, normal))); word-spacing: var(--bksdk-st-word-spacing-m, var(--bksdk-st-word-spacing-t, var(--bksdk-st-word-spacing-d, normal))); } } /* Difficulty tabs */ .bkbg-sdk-diff-row { display: flex; justify-content: center; gap: 8px; flex-wrap: wrap; margin-bottom: 14px; } .bkbg-sdk-diff-btn { padding: 5px 16px; border-radius: 20px; border: 2px solid; font-size: 13px; font-weight: 600; cursor: pointer; transition: background 0.15s, color 0.15s; } /* Info bar */ .bkbg-sdk-info { display: flex; justify-content: center; gap: 20px; flex-wrap: wrap; margin-bottom: 14px; font-weight: 700; } /* Grid */ .bkbg-sdk-board-wrap { display: flex; justify-content: center; margin-bottom: 14px; overflow-x: auto; } .bkbg-sdk-grid { display: inline-grid; grid-template-columns: repeat(9, 1fr); border: 2px solid; border-radius: 8px; overflow: hidden; } .bkbg-sdk-cell { width: 40px; height: 40px; display: flex; align-items: center; justify-content: center; font-size: 18px; font-weight: 700; cursor: pointer; outline: none; border-right: 1px solid #d1d5db; border-bottom: 1px solid #d1d5db; transition: background 0.1s; position: relative; user-select: none; -webkit-user-select: none; } .bkbg-sdk-cell:last-child { border-right: none; } .bkbg-sdk-cell.bkbg-sdk-thick-right { border-right-width: 2px; border-right-style: solid; } .bkbg-sdk-cell.bkbg-sdk-thick-bottom { border-bottom-width: 2px; border-bottom-style: solid; } .bkbg-sdk-cell.bkbg-sdk-selected { } .bkbg-sdk-cell.bkbg-sdk-related { } .bkbg-sdk-cell.bkbg-sdk-same-num { filter: brightness(0.93); } .bkbg-sdk-cell.bkbg-sdk-given { font-weight: 900; } .bkbg-sdk-cell.bkbg-sdk-error { } .bkbg-sdk-cell.bkbg-sdk-solved-flash { animation: bkbg-sdk-solved-pulse 0.4s ease; } @keyframes bkbg-sdk-solved-pulse { 0% { transform: scale(1); } 50% { transform: scale(1.15); } 100%{ transform: scale(1); } } /* Notes grid (pencil marks) */ .bkbg-sdk-notes { display: grid; grid-template-columns: repeat(3,1fr); width: 100%; height: 100%; font-size: 8px; font-weight: 500; padding: 2px; box-sizing: border-box; } .bkbg-sdk-note { display: flex; align-items: center; justify-content: center; } /* Number pad */ .bkbg-sdk-numpad { display: flex; justify-content: center; gap: 6px; flex-wrap: wrap; margin-bottom: 14px; } .bkbg-sdk-num-btn { width: 40px; height: 40px; border-radius: 8px; border: 2px solid; font-size: 18px; font-weight: 700; cursor: pointer; transition: background 0.15s, transform 0.1s; } .bkbg-sdk-num-btn:hover { filter: brightness(0.9); } .bkbg-sdk-num-btn:active { transform: scale(0.92); } .bkbg-sdk-erase-btn { background: transparent; border: 2px solid #9ca3af; color: #9ca3af; } .bkbg-sdk-pencil-btn { width: 40px; height: 40px; border-radius: 8px; border: 2px solid; font-size: 14px; cursor: pointer; transition: background 0.15s; } .bkbg-sdk-pencil-btn.active { /* set inline */ } /* Action buttons */ .bkbg-sdk-actions { display: flex; justify-content: center; gap: 10px; flex-wrap: wrap; } .bkbg-sdk-btn { padding: 10px 22px; border-radius: 10px; font-size: 14px; font-weight: 700; cursor: pointer; border: none; color: #fff; transition: opacity 0.2s, transform 0.1s; } .bkbg-sdk-btn:hover { opacity: 0.85; } .bkbg-sdk-btn:active { transform: scale(0.97); } .bkbg-sdk-btn-outline { background: transparent !important; border: 2px solid !important; } /* Win / Game-over overlay */ .bkbg-sdk-overlay { padding: 30px 20px; text-align: center; animation: bkbg-sdk-fade-in 0.4s; } @keyframes bkbg-sdk-fade-in { from { opacity: 0; transform: scale(0.95); } to { opacity: 1; transform: scale(1); } } .bkbg-sdk-overlay-emoji { font-size: 56px; margin-bottom: 10px; } .bkbg-sdk-overlay-title { font-size: 26px; font-weight: 800; margin-bottom: 6px; } .bkbg-sdk-overlay-sub { font-size: 15px; margin-bottom: 20px; } @media (max-width: 440px) { .bkbg-sdk-cell { width: 34px; height: 34px; font-size: 15px; } }