.sd-tool{--sd-line: #cfd8e3;--sd-line-strong: #475569;--sd-cell-bg: #ffffff;--sd-cell-related: #eef4ff;--sd-cell-selected: #d6e6ff;--sd-cell-same: #c2dbff;--sd-text-given: var(--text);--sd-text-user: #0b57c4;--sd-text-note: #4f6076;--sd-board-max: 440px}:root[data-theme="dark"] .sd-tool{--sd-line: #2c3646;--sd-line-strong: #8695ab;--sd-cell-bg: #16202e;--sd-cell-related: #1c2a3d;--sd-cell-selected: #2a4767;--sd-cell-same: #365779;--sd-text-given: #eef2f7;--sd-text-user: #9dd2ff;--sd-text-note: #b3c2d4}.sd-tool .sd-layout{align-items: flex-start;row-gap: 16px}.sd-tool .sd-board-panel,.sd-tool .sd-side-panel{min-width: 0}.sd-tool .sd-panel-header{display: flex;align-items: center;justify-content: space-between;gap: 12px}.sd-tool .sd-panel-header>span:first-child{flex: 1 1 auto;min-width: 0}.sd-tool .sd-panel-header i{margin-right: 6px}.sd-tool .sd-panel-header .sd-hint{flex: 0 1 auto;min-width: 0;color: var(--text-3);font-size: 12px;text-align: right}.sd-tool .sd-board-body,.sd-tool .sd-side-body{display: flex;flex-direction: column;gap: 14px}.sd-tool .sd-stats{display: flex;flex-wrap: wrap;gap: 10px}.sd-tool .sd-stat{flex: 1 1 92px;min-width: 0;padding: 8px 10px;background: var(--bg-soft);border: 1px solid var(--border);border-radius: var(--radius);text-align: center}.sd-tool .sd-stat-label{display: block;color: var(--text-3);font-size: 11.5px;font-weight: 600}.sd-tool .sd-stat-val{display: block;margin-top: 2px;color: var(--text);font-size: 19px;font-weight: 700;font-variant-numeric: tabular-nums}.sd-tool .sd-stats.is-side .sd-stat-val{font-size: 16px}.sd-tool .sd-stage{position: relative;align-self: center;width: 100%;max-width: var(--sd-board-max)}.sd-tool .sd-board{display: flex;flex-direction: column;width: 100%;background: var(--sd-cell-bg);border: 2px solid var(--sd-line-strong);border-radius: 8px;overflow: hidden}.sd-tool .sd-row{display: grid;grid-template-columns: repeat(9,minmax(0,1fr))}.sd-tool .sd-cell{position: relative;aspect-ratio: 1;display: flex;align-items: center;justify-content: center;min-width: 0;background: transparent;color: var(--sd-text-user);font-weight: 700;cursor: pointer;user-select: none;-webkit-tap-highlight-color: transparent;border-right: 1px solid var(--sd-line);border-bottom: 1px solid var(--sd-line)}.sd-tool .sd-row:nth-child(3) .sd-cell,.sd-tool .sd-row:nth-child(6) .sd-cell{border-bottom: 2px solid var(--sd-line-strong)}.sd-tool .sd-row:nth-child(9) .sd-cell{border-bottom: 0}.sd-tool .sd-cell:nth-child(3),.sd-tool .sd-cell:nth-child(6){border-right: 2px solid var(--sd-line-strong)}.sd-tool .sd-cell:nth-child(9){border-right: 0}.sd-tool .sd-val{font-size: clamp(13px,4.6vw,22px);line-height: 1.45}.sd-tool .sd-cell.sd-given{color: var(--sd-text-given);cursor: default}.sd-tool .sd-cell.sd-related{background: var(--sd-cell-related)}.sd-tool .sd-cell.sd-selected{background: var(--sd-cell-selected)}.sd-tool .sd-cell.sd-same{background: var(--sd-cell-same)}.sd-tool .sd-cell.sd-error{color: var(--toast-error-text);background: var(--danger-soft)}.sd-tool .sd-cell:focus-visible{outline: 2px solid var(--primary-ring);outline-offset: -2px}.sd-tool .sd-notes{position: absolute;inset: 0;display: grid;grid-template-columns: repeat(3,minmax(0,1fr));grid-template-rows: repeat(3,minmax(0,1fr));font-size: clamp(5.5px,1.75vw,10px);font-weight: 500;line-height: 1;color: var(--sd-text-note);pointer-events: none}.sd-tool .sd-notes span{display: flex;align-items: center;justify-content: center}.sd-tool .sd-mask{position: absolute;inset: 0;display: none;flex-direction: column;align-items: center;justify-content: center;gap: 8px;padding: 16px;text-align: center;background: rgba(248,250,252,0.86);backdrop-filter: blur(7px);border-radius: 8px}:root[data-theme="dark"] .sd-tool .sd-mask{background: rgba(10,15,22,0.82)}.sd-tool .sd-mask.is-on{display: flex}.sd-tool .sd-mask-title{color: var(--text);font-size: 18px;font-weight: 700}.sd-tool .sd-mask-text{margin: 0 0 4px;color: var(--text-2);font-size: 12.5px}.sd-tool .sd-message{align-self: stretch;width: 100%;max-width: var(--sd-board-max);margin: 0 auto;padding: 9px 12px;background: var(--primary-soft);border: 1px solid var(--border);border-radius: var(--radius);color: var(--text-2);font-size: 12.5px;line-height: 1.6}.sd-tool .sd-message.is-good{background: var(--success-soft);border-color: var(--toast-success-border);color: var(--toast-success-text)}.sd-tool .sd-message.is-error{background: var(--danger-soft);border-color: var(--toast-error-border);color: var(--toast-error-text)}.sd-tool .sd-numpad{display: grid;grid-template-columns: repeat(9,minmax(0,1fr));gap: 6px;width: 100%;max-width: var(--sd-board-max);margin: 0 auto}.sd-tool .sd-key{display: flex;flex-direction: column;align-items: center;justify-content: center;gap: 1px;min-width: 0;padding: 5px 0 3px;background: var(--sd-cell-bg);border: 1px solid var(--border-strong);border-radius: 8px;color: var(--sd-text-user);cursor: pointer;transition: background .15s,border-color .15s}.sd-tool .sd-key:hover:not(.is-off){background: var(--sd-cell-related);border-color: var(--primary)}.sd-tool .sd-key:focus-visible{outline: 2px solid var(--primary-ring);outline-offset: 2px}.sd-tool .sd-key-num{font-size: clamp(15px,4.4vw,20px);font-weight: 700;line-height: 1.1}.sd-tool .sd-key-left{font-size: 10px;font-weight: 600;line-height: 1.2;color: var(--text-3);font-variant-numeric: tabular-nums}.sd-tool .sd-key.is-off{opacity: .4;cursor: not-allowed}.sd-tool .sd-actions{display: flex;flex-wrap: wrap;gap: 8px}.sd-tool .sd-btn{flex: 1 1 calc(33.33% - 8px);min-width: 0;font-size: 13px;white-space: nowrap}.sd-tool .sd-btn i{margin-right: 4px}.sd-tool .sd-btn.is-on{background: var(--primary-soft);border-color: var(--primary);color: var(--primary-text)}.sd-tool .sd-btn.is-off,.sd-tool .sd-btn[disabled]{opacity: .45;cursor: not-allowed}:root[data-theme="dark"] .sd-tool .sd-btn.is-on{background: rgba(30,64,175,0.28)}.sd-tool .control-label{display: block;margin-bottom: 6px;color: var(--text);font-size: 13px;font-weight: 600}.sd-tool .sd-chips{display: flex;flex-wrap: wrap;gap: 8px}.sd-tool .sd-chip{flex: 0 1 auto;min-width: 0;padding: 6px 14px;background: var(--bg);border: 1px solid var(--border-strong);border-radius: 999px;color: var(--text-2);font-size: 12.5px;cursor: pointer;transition: background .15s,border-color .15s,color .15s}.sd-tool .sd-chip:hover{border-color: var(--primary);color: var(--primary-text)}.sd-tool .sd-chip.is-active{background: var(--primary-solid);border-color: var(--primary-solid);color: #fff}:root[data-theme="dark"] .sd-tool .sd-chip.is-active{background: var(--primary-solid);border-color: var(--primary-solid);color: #04101f}.sd-tool .sd-field-row{display: flex;flex-wrap: wrap;align-items: flex-end;gap: 8px}.sd-tool .sd-field{display: flex;flex-direction: column;gap: 4px;min-width: 0;color: var(--text-2);font-size: 12px;font-weight: 600}.sd-tool .sd-field-grow{flex: 1 1 150px}.sd-tool .sd-field .form-control{width: 100%;font-variant-numeric: tabular-nums}.sd-tool .sd-seedgo{flex: 0 0 auto}.sd-tool .sd-field-note{margin: 6px 0 0;color: var(--text-3);font-size: 12px;line-height: 1.6}.sd-tool .sd-field-note strong{color: var(--primary-text);font-variant-numeric: tabular-nums}.sd-tool .sd-progress-row{display: flex;flex-direction: column;gap: 6px}.sd-tool .sd-progress{width: 100%;height: 8px;border: 0;border-radius: 999px;background: var(--bg-soft);appearance: none}.sd-tool .sd-progress::-webkit-progress-bar{background: var(--bg-soft);border-radius: 999px}.sd-tool .sd-progress::-webkit-progress-value{background: var(--primary-solid);border-radius: 999px}.sd-tool .sd-progress::-moz-progress-bar{background: var(--primary-solid);border-radius: 999px}.sd-tool .sd-progress-text{color: var(--text-3);font-size: 12px;font-variant-numeric: tabular-nums}.sd-tool .sd-action-row{display: flex;flex-wrap: wrap;gap: 8px}.sd-tool .sd-action-row .btn{flex: 1 1 auto;min-width: 0}.sd-tool .sd-note{padding: 9px 11px;background: var(--bg-soft);border: 1px solid var(--border);border-radius: var(--radius);color: var(--text-2);font-size: 12.5px;line-height: 1.6}.sd-tool .sd-note i{margin-right: 5px;color: var(--info)}.sd-tool .sd-samples{display: flex;flex-direction: column;gap: 12px;margin-top: 12px}.sd-tool .sd-sample{display: flex;flex-direction: column;gap: 8px;padding: 12px 14px;background: var(--bg-soft);border: 1px solid var(--border);border-radius: var(--radius)}.sd-tool .sd-sample-head{display: flex;flex-wrap: wrap;align-items: center;justify-content: space-between;gap: 8px 12px}.sd-tool .sd-sample-head strong{flex: 1 1 auto;min-width: 0;color: var(--text);font-size: 14px}.sd-tool .sd-sample-head i{margin-right: 5px;color: var(--primary-text)}.sd-tool .sd-sample p{margin: 0;color: var(--text-2);font-size: 13.5px}.sd-tool .sd-sample code{padding: 1px 5px;background: var(--bg);border: 1px solid var(--border);border-radius: 4px;color: var(--text);font-family: var(--mono);font-size: 12.5px}.sd-tool .sd-sample-btn{flex: 0 0 auto}@media (min-width: 768px) and (max-width: 991px){.sd-tool .sd-layout>[class*="col-"]{flex: 0 0 100%;max-width: 100%}}@media (max-width: 767px){.sd-tool .sd-layout{flex-direction: column}.sd-tool .sd-btn{flex: 1 1 calc(50% - 8px)}.sd-tool .sd-numpad{gap: 4px}.sd-tool .sd-panel-header .sd-hint{display: none}}@media (max-width: 359px){.sd-tool .sd-key-left{font-size: 9px}}