.gb-tool .row-layout{align-items: stretch}.gb-panels>[class*='col-']{display: flex;flex-direction: column}.gb-panel,.gb-side{display: flex;flex-direction: column;flex: 1 1 auto;min-width: 0}.gb-panel-header{display: flex;align-items: center;justify-content: space-between;gap: 12px;flex-wrap: wrap}.gb-panel-header>span{display: inline-flex;align-items: center;gap: 8px;font-weight: 600}.gb-mode-switch{display: inline-flex;background: var(--bg-soft,#f1f5f9);border-radius: 10px;padding: 3px;gap: 2px}.gb-mode-btn{border: none;background: transparent;color: var(--text-secondary,#64748b);font-size: 13px;font-weight: 600;padding: 6px 12px;border-radius: 8px;cursor: pointer;transition: background 0.2s ease,color 0.2s ease}.gb-mode-btn.is-active{background: var(--accent,#2563eb);color: #fff;box-shadow: 0 1px 4px rgba(0,0,0,0.15)}.gb-body{display: flex;flex-direction: column;gap: 14px;flex: 1 1 auto}.gb-status{display: flex;align-items: center;gap: 10px;padding: 11px 14px;border: 1px solid var(--border,#e2e8f0);border-radius: 10px;background: var(--bg-card,#fff);font-size: 14px;font-weight: 600;color: var(--text,#0f172a)}.gb-status-dot{width: 18px;height: 18px;border-radius: 50%;flex-shrink: 0;border: 2px solid rgba(0,0,0,0.2)}.gb-status-dot.black{background: #111}.gb-status-dot.white{background: #f8f8f8}.gb-status-dot.neutral{background: #94a3b8}.gb-board-wrap{display: flex;justify-content: center;background: var(--bg-soft,#f8fafc);border: 1px solid var(--border,#e2e8f0);border-radius: 12px;padding: 12px}#gb-board{width: 100%;max-width: 560px;height: auto;aspect-ratio: 1 / 1;border-radius: 8px;cursor: pointer;touch-action: manipulation}.gb-controls{display: flex;align-items: flex-end;justify-content: space-between;gap: 12px;flex-wrap: wrap}.gb-settings{display: flex;gap: 12px;flex-wrap: wrap}.gb-field{display: flex;flex-direction: column;gap: 4px;font-size: 12.5px;color: var(--text-secondary,#475569)}.gb-field .form-control{min-width: 130px}.gb-actions{display: flex;gap: 8px;flex-wrap: wrap}.gb-message{display: flex;align-items: center;gap: 8px;padding: 10px 14px;border-radius: 10px;font-size: 13px;line-height: 1.5}.gb-message.hidden{display: none}.gb-msg-info{background: var(--info-soft,#eff6ff);color: var(--info,#2563eb);border: 1px solid var(--info-border,#bfdbfe)}.gb-msg-success{background: var(--success-soft,#f0fdf4);color: var(--success,#16a34a);border: 1px solid var(--success-border,#bbf7d0)}.gb-msg-error{background: var(--danger-soft,#fef2f2);color: var(--danger,#dc2626);border: 1px solid var(--danger-border,#fecaca)}.gb-message.is-fading{opacity: 0;transition: opacity 0.25s ease}.gb-score{display: grid;grid-template-columns: 1fr 1fr 1fr;gap: 8px}.gb-score-item{border: 1px solid var(--border,#e2e8f0);border-radius: 10px;padding: 10px 12px;text-align: center;background: var(--bg-card,#fff)}.gb-score-item b{display: block;font-size: 24px;color: var(--text,#0f172a);font-variant-numeric: tabular-nums}.gb-score-label{display: inline-flex;align-items: center;gap: 5px;font-size: 12px;color: var(--text-secondary,#475569)}.gb-dot-black{color: #111;font-size: 10px}.gb-dot-white{color: #cbd5e1;font-size: 10px}.gb-movelist-wrap{border: 1px solid var(--border,#e2e8f0);border-radius: 10px;overflow: hidden}.gb-movelist-title{display: flex;align-items: center;justify-content: space-between;padding: 9px 14px;font-size: 13px;font-weight: 700;color: var(--text,#0f172a);border-bottom: 1px solid var(--border,#e2e8f0);background: var(--bg-soft,#f8fafc)}.gb-move-count{font-size: 12px;font-weight: 400;color: var(--text-secondary,#64748b)}.gb-movelist{max-height: 180px;overflow-y: auto;padding: 4px 0}.gb-movelist-empty{padding: 18px 14px;text-align: center;font-size: 13px;color: var(--text-secondary,#64748b)}.gb-move-item{display: flex;align-items: center;gap: 8px;padding: 5px 14px;font-size: 13px;color: var(--text,#0f172a);font-variant-numeric: tabular-nums}.gb-move-num{color: var(--text-secondary,#94a3b8);min-width: 26px}.gb-move-dot{width: 12px;height: 12px;border-radius: 50%;border: 1px solid rgba(0,0,0,0.25)}.gb-move-dot.black{background: #111}.gb-move-dot.white{background: #f8f8f8}.gb-rules{border: 1px solid var(--border,#e2e8f0);border-radius: 10px;padding: 0 14px;background: var(--bg-card,#fff)}.gb-rules summary{cursor: pointer;padding: 10px 0;font-size: 13px;font-weight: 600;color: var(--text,#0f172a);display: flex;align-items: center;gap: 8px;list-style: none}.gb-rules summary::-webkit-details-marker{display: none}.gb-rules summary::after{content: '\f282';font-family: 'bootstrap-icons';margin-left: auto;font-size: 11px;color: var(--text-secondary,#64748b);transition: transform 0.2s ease}.gb-rules[open] summary::after{transform: rotate(180deg)}.gb-rules-body{padding: 4px 0 12px;font-size: 12.5px;line-height: 1.7;color: var(--text-secondary,#475569)}.gb-rules-body p{margin: 0 0 8px}.gb-rules-body p:last-child{margin-bottom: 0}.gb-rules-body code{background: var(--bg-soft,#f1f5f9);border: 1px solid var(--border,#e2e8f0);border-radius: 4px;padding: 1px 6px;font-size: 12px;color: var(--text,#0f172a)}.gb-note{display: flex;align-items: flex-start;gap: 8px;padding: 12px 14px;background: var(--info-soft,#eff6ff);border: 1px solid var(--info-border,#bfdbfe);border-radius: 10px;color: var(--info,#1d4ed8);font-size: 12.5px;line-height: 1.6}@media (max-width: 767px){.gb-controls{flex-direction: column;align-items: stretch}.gb-actions{justify-content: flex-start}}