/* Register page v2 — extends login-v2 patterns (Figma 199:1689) */

.register-v2 {
    width: 100%;
    margin: clamp(1.5rem, 4vw, 3rem) auto var(--space-6);
}

.register-v2__page-head {
    margin-bottom: var(--space-5);
}

.register-v2__page-title {
    margin: 0;
    color: var(--zino-text-heading);
    font-size: clamp(1.125rem, 0.278vw + 1.069rem, 1.25rem);
    font-weight: 700;
    line-height: 1.3;
}

.register-v2__logo {
    width: min(10rem, 100%);
    height: auto;
}

.register-v2__section {
    background: #fff;
    border: 1px solid var(--zino-border-strong);
    margin-bottom: var(--space-5);
    padding: var(--space-5);
}

.register-v2__section-head {
    gap: var(--space-3);
    margin-bottom: var(--space-5);
}

.register-v2__section-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 1.75rem;
    height: 1.75rem;
    flex-shrink: 0;
    color: var(--zino-green);
}

.register-v2__section-icon svg {
    width: 1.75rem;
    height: 1.75rem;
    display: block;
}

.register-v2__section-title {
    color: var(--zino-text-heading);
    font-size: clamp(0.9375rem, 0.139vw + 0.911rem, 1rem);
    font-weight: 700;
    line-height: 1.4;
}

.register-v2__field {
    margin-bottom: var(--space-4);
}

.register-v2__field .login-v2__input,
.register-v2__field select.login-v2__input,
.register-v2__field textarea.login-v2__input {
    width: 100%;
}

.register-v2__field textarea.login-v2__input {
    min-height: 5rem;
    resize: vertical;
}

.register-v2__req {
    color: var(--zino-green);
}

.register-v2__chip-grid {
    display: flex;
    flex-wrap: wrap;
    gap: var(--space-3);
}

.register-v2__chip {
    position: relative;
    display: inline-flex;
    align-items: center;
    gap: var(--space-2);
    min-width: 10.625rem;
    min-height: 2.875rem;
    padding: var(--space-2) var(--space-3);
    border: 1px solid var(--zino-border-strong);
    background: #fff;
    color: var(--zino-text);
    font-size: 0.75rem;
    line-height: 1.3;
    cursor: pointer;
    user-select: none;
    margin: 0;
}

.register-v2__chip-input {
    position: absolute;
    opacity: 0;
    width: 0;
    height: 0;
}

.register-v2__chip-box {
    position: relative;
    width: 1.5rem;
    height: 1.5rem;
    flex-shrink: 0;
    background: var(--zino-surface-3);
}

.register-v2__chip-input:checked + .register-v2__chip-box::after {
    content: "";
    position: absolute;
    top: 0.3rem;
    right: 0.5rem;
    width: 0.35rem;
    height: 0.65rem;
    border: solid var(--zino-green);
    border-width: 0 2px 2px 0;
    transform: rotate(45deg);
}

.register-v2__chip-text {
    flex: 1;
    text-align: right;
}

.register-v2__upload {
    display: flex;
    align-items: center;
    min-height: 5.5rem;
    padding: var(--space-3) var(--space-4);
    border: 1px solid var(--zino-border-strong);
    background: #fff;
}

.register-v2__upload input[type="file"] {
    width: 100%;
    font-size: 0.8125rem;
    color: var(--zino-text);
}

.register-v2__rules-col-title {
    margin-bottom: var(--space-2);
    color: var(--zino-text);
    font-size: 0.875rem;
    font-weight: 700;
    line-height: 1.5;
}

.register-v2__rules-text {
    margin: 0;
    color: var(--zino-text);
    font-size: 0.75rem;
    line-height: 1.6;
    text-align: justify;
}

.register-v2__accept {
    margin-top: var(--space-4);
}

.register-v2__actions {
    margin-top: var(--space-5);
    margin-bottom: var(--space-6);
}

.register-v2 .select2-container {
    width: 100% !important;
}

.register-v2 .select2-container--default .select2-selection--single {
    height: auto;
    min-height: 2.25rem;
    border: none;
    border-bottom: 1px solid var(--zino-border-strong);
    border-radius: 0;
    background: transparent;
}

.register-v2 .select2-container--default .select2-selection--single .select2-selection__rendered {
    padding: var(--space-2) 0;
    color: var(--zino-text-heading);
    font-size: 0.9375rem;
    line-height: 1.5;
}

.register-v2 .select2-container--default .select2-selection--single .select2-selection__arrow {
    height: 100%;
    top: 0;
}

body.register-v2-page .wrapper.default {
    background: var(--zino-surface);
}

body.register-v2-page .mini-footer {
    margin-top: 0;
    border-top-color: var(--zino-border);
}

@media (max-width: 767.98px) {
    .register-v2__section {
        padding: var(--space-4);
    }

    .register-v2__chip {
        min-width: calc(50% - var(--space-2));
    }
}
