.container { display: flex; justify-content: center; align-items: flex-start; padding-top: 60px; } .card { background-color: var(--surface-color); border-radius: var(--radius-lg); box-shadow: var(--shadow-md); padding: var(--spacing-xl); width: 100%; max-width: 520px; } .title { font-size: 24px; font-weight: 700; color: var(--text-primary); text-align: center; margin-bottom: var(--spacing-sm); } .subtitle { font-size: 14px; color: var(--text-secondary); text-align: center; margin-bottom: var(--spacing-xl); } .form { display: flex; flex-direction: column; gap: var(--spacing-lg); } .inputGroup { display: flex; flex-direction: column; gap: var(--spacing-sm); } .label { font-size: 14px; font-weight: 500; color: var(--text-primary); } .input { padding: var(--spacing-sm) var(--spacing-md); border: 1px solid var(--border-color); border-radius: var(--radius-md); font-size: 14px; background-color: var(--background-color); color: var(--text-primary); transition: border-color 0.2s; } .input:focus { outline: none; border-color: var(--primary-color); } .input:disabled { opacity: 0.6; cursor: not-allowed; } .thresholdConfig { display: flex; align-items: center; gap: var(--spacing-lg); padding: var(--spacing-md); background-color: var(--background-color); border-radius: var(--radius-md); } .thresholdItem { display: flex; flex-direction: column; align-items: center; gap: var(--spacing-sm); } .thresholdLabel { font-size: 12px; color: var(--text-secondary); } .thresholdDivider { font-size: 16px; font-weight: 600; color: var(--text-secondary); } .numberInput { display: flex; align-items: center; gap: var(--spacing-sm); } .numberButton { width: 32px; height: 32px; display: flex; align-items: center; justify-content: center; background-color: var(--surface-color); border: 1px solid var(--border-color); border-radius: var(--radius-md); font-size: 18px; color: var(--text-primary); cursor: pointer; transition: all 0.2s; } .numberButton:hover:not(:disabled) { border-color: var(--primary-color); color: var(--primary-color); } .numberButton:disabled { opacity: 0.4; cursor: not-allowed; } .numberValue { font-size: 20px; font-weight: 600; color: var(--primary-color); min-width: 32px; text-align: center; } .hint { font-size: 12px; color: var(--text-secondary); } .error { padding: var(--spacing-sm) var(--spacing-md); background-color: rgba(220, 53, 69, 0.1); color: var(--error-color); border-radius: var(--radius-md); font-size: 13px; } .actions { display: flex; gap: var(--spacing-md); justify-content: flex-end; margin-top: var(--spacing-md); } .primaryButton { padding: var(--spacing-sm) var(--spacing-lg); background-color: var(--primary-color); color: white; border: none; border-radius: var(--radius-md); font-size: 14px; font-weight: 500; cursor: pointer; transition: background-color 0.2s; } .primaryButton:hover:not(:disabled) { background-color: var(--primary-light); } .primaryButton:disabled { opacity: 0.6; cursor: not-allowed; } .secondaryButton { padding: var(--spacing-sm) var(--spacing-lg); background-color: transparent; color: var(--text-secondary); border: 1px solid var(--border-color); border-radius: var(--radius-md); font-size: 14px; font-weight: 500; cursor: pointer; transition: all 0.2s; } .secondaryButton:hover:not(:disabled) { border-color: var(--primary-color); color: var(--primary-color); } .secondaryButton:disabled { opacity: 0.6; cursor: not-allowed; } .creating { display: flex; flex-direction: column; align-items: center; justify-content: center; padding: var(--spacing-xl); color: var(--text-secondary); } .spinner { width: 40px; height: 40px; border: 3px solid var(--border-color); border-top-color: var(--primary-color); border-radius: 50%; animation: spin 1s linear infinite; margin-bottom: var(--spacing-md); } @keyframes spin { to { transform: rotate(360deg); } } .successIcon { width: 64px; height: 64px; background-color: var(--success-color); color: white; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-size: 32px; margin: 0 auto var(--spacing-md); } .successTitle { font-size: 18px; font-weight: 600; color: var(--text-primary); text-align: center; margin-bottom: var(--spacing-lg); } .inviteSection { display: flex; flex-direction: column; gap: var(--spacing-sm); } .inviteCodeWrapper { display: flex; gap: var(--spacing-sm); } .inviteCode { flex: 1; padding: var(--spacing-sm) var(--spacing-md); background-color: var(--background-color); border: 1px solid var(--border-color); border-radius: var(--radius-md); font-family: monospace; font-size: 13px; color: var(--text-primary); word-break: break-all; } .copyButton { padding: var(--spacing-sm) var(--spacing-md); background-color: var(--primary-color); color: white; border: none; border-radius: var(--radius-md); font-size: 13px; cursor: pointer; transition: background-color 0.2s; white-space: nowrap; } .copyButton:hover { background-color: var(--primary-light); }