/**
 * Child intake & edit shortcode forms — aligned with sac-dashboard.css tokens.
 * Scope: .sac-child-intake-shell, .sac-child-edit-shell
 */

.sac-child-intake-shell,
.sac-child-edit-shell {
    --sac-navy: #1e3264;
    --sac-navy-light: #2a4380;
    --sac-navy-dark: #152447;
    --sac-green: #4caf4b;
    --sac-green-dark: #2e7d32;
    --sac-green-light: #66bb6a;
    --sac-black: #1a1a1a;
    --sac-text: #555;
    --sac-border: #e0e0e0;
    --sac-bg: #f5f5f5;
    --sac-white: #fff;
    --sac-radius: 6px;
    --sac-radius-lg: 10px;
    --sac-transition: all 0.2s ease;
}

.sac-child-intake-shell,
.sac-child-edit-shell {
    margin: 0 auto;
    padding: 0 16px 32px;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
    color: var(--sac-black);
}

.sac-child-intake-shell .sac-btn,
.sac-child-edit-shell .sac-btn {
    display: inline-block;
    padding: 10px 20px;
    border: 0;
    border-radius: var(--sac-radius);
    color: var(--sac-white);
    background: var(--sac-navy);
    font-size: 14px;
    font-weight: 600;
    line-height: 1.4;
    text-decoration: none;
    cursor: pointer;
    transition: var(--sac-transition);
}

.sac-child-intake-shell .sac-btn:hover,
.sac-child-edit-shell .sac-btn:hover {
    color: var(--sac-white);
    background: var(--sac-navy-light);
}

.sac-child-intake-form,
.sac-edit-child-form {
    margin-top: 8px;
}

.sac-child-intake-form-inner.sac-form,
.sac-edit-child-form .sac-form {
    margin: 0;
}

/* Section cards */
.sac-child-intake-shell .sac-intake-card,
.sac-child-edit-shell .sac-intake-card {
    background: var(--sac-white);
    border: 1px solid var(--sac-border);
    border-radius: var(--sac-radius-lg);
    padding: 22px 26px;
    margin-bottom: 20px;
}

.sac-child-intake-shell .sac-intake-card-title,
.sac-child-edit-shell .sac-intake-card-title,
.sac-child-edit-shell .sac-form-section-title {
    margin: 0 0 18px;
    padding-bottom: 10px;
    border-bottom: 2px solid var(--sac-green);
    color: var(--sac-navy);
    font-size: 18px;
    font-weight: 700;
}

.sac-child-edit-shell .sac-form-section-title {
    border-bottom-color: var(--sac-navy);
    margin-top: 28px;
}

.sac-child-edit-shell .sac-edit-child-form-inner > .sac-form-section-title:first-of-type {
    margin-top: 0;
}

/* Flex rows & fields */
.sac-child-intake-shell .sac-form-row-flex,
.sac-child-edit-shell .sac-form-row-flex {
    display: flex;
    gap: 15px;
    flex-wrap: wrap;
    align-items: flex-start;
}

.sac-child-intake-shell .sac-form-row-flex--mt,
.sac-child-edit-shell .sac-form-row-flex--mt {
    margin-top: 12px;
}

.sac-child-intake-shell .sac-form-field-flex,
.sac-child-edit-shell .sac-form-field-flex {
    flex: 1;
    min-width: 200px;
}

.sac-child-intake-shell .sac-form-field-flex--narrow,
.sac-child-edit-shell .sac-form-field-flex--narrow {
    min-width: 150px;
}

.sac-child-intake-shell .sac-form-field--mt,
.sac-child-edit-shell .sac-form-field--mt {
    margin-top: 12px;
}

.sac-child-intake-shell .sac-form-field label,
.sac-child-edit-shell .sac-form-field label {
    display: block;
    font-weight: 600;
    margin-bottom: 6px;
    color: var(--sac-navy);
    font-size: 14px;
}

.sac-child-intake-shell .sac-required,
.sac-child-edit-shell .sac-required {
    color: #d63638;
}

/* Controls (replaces legacy gray inline inputs) */
.sac-child-intake-shell .sac-form-control,
.sac-child-edit-shell .sac-form-control {
    width: 100%;
    box-sizing: border-box;
    padding: 10px 12px;
    margin-top: 4px;
    border: 1px solid var(--sac-border);
    border-radius: var(--sac-radius);
    font-size: 14px;
    color: var(--sac-black);
    background: var(--sac-white);
    transition: var(--sac-transition);
}

.sac-child-intake-shell .sac-form-control:focus,
.sac-child-edit-shell .sac-form-control:focus {
    outline: none;
    border-color: var(--sac-navy);
}

.sac-child-intake-shell .sac-form-control--muted,
.sac-child-edit-shell .sac-form-control--muted {
    background: var(--sac-bg);
    color: var(--sac-text);
}

.sac-child-intake-shell .sac-form-control--internal,
.sac-child-edit-shell .sac-form-control--internal {
    border-color: #e0c97a;
    background: #fffdf6;
}

/* Ministry locked display */
.sac-child-intake-shell .sac-ministry-locked,
.sac-child-edit-shell .sac-ministry-locked {
    padding: 10px 12px;
    margin-top: 4px;
    border: 1px solid var(--sac-border);
    border-radius: var(--sac-radius);
    background: var(--sac-bg);
    color: var(--sac-text);
}

.sac-child-intake-shell .sac-ministry-locked small,
.sac-child-edit-shell .sac-ministry-locked small {
    color: var(--sac-text);
}

/* Post-secondary panel */
.sac-child-intake-shell .sac-postsecondary-panel,
.sac-child-edit-shell .sac-postsecondary-panel {
    margin-top: 12px;
    padding: 16px 18px;
    border: 1px solid rgba(46, 125, 50, 0.25);
    border-radius: var(--sac-radius-lg);
    background: rgba(76, 175, 75, 0.06);
}

.sac-child-intake-shell .sac-program-other-wrapper,
.sac-child-edit-shell .sac-program-other-wrapper {
    margin-top: 6px;
}

.sac-child-intake-shell .sac-postsecondary-panel__title,
.sac-child-edit-shell .sac-postsecondary-panel__title {
    margin: 0 0 12px;
    color: var(--sac-green-dark);
    font-size: 16px;
    font-weight: 700;
}

/* Profile upload drop zone */
.sac-child-intake-shell .sac-intake-file-drop__label {
    display: block;
    margin-bottom: 8px;
}

.sac-child-intake-shell .sac-intake-file-drop {
    position: relative;
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 18px;
    border: 2px dashed var(--sac-border);
    border-radius: var(--sac-radius-lg);
    background: var(--sac-bg);
    transition: var(--sac-transition);
}

.sac-child-intake-shell .sac-intake-file-drop:hover {
    border-color: var(--sac-green);
    background: rgba(76, 175, 75, 0.04);
}

.sac-child-intake-shell .sac-intake-file-drop__icon {
    flex-shrink: 0;
    width: 48px;
    height: 48px;
    border-radius: 50%;
    background: rgba(76, 175, 75, 0.12);
    display: flex;
    align-items: center;
    justify-content: center;
}

.sac-child-intake-shell .sac-intake-file-drop__body {
    flex: 1;
    min-width: 0;
}

.sac-child-intake-shell .sac-intake-file-drop__choose {
    display: inline-block;
    background: var(--sac-green-dark);
    color: var(--sac-white);
    padding: 8px 18px;
    border-radius: var(--sac-radius);
    font-weight: 600;
    font-size: 14px;
    cursor: pointer;
}

.sac-child-intake-shell .sac-intake-file-drop__choose:hover {
    filter: brightness(1.05);
}

.sac-child-intake-shell .sac-intake-file-drop__name {
    display: inline-block;
    margin-left: 10px;
    color: #64748b;
    font-size: 14px;
    vertical-align: middle;
}

.sac-child-intake-shell .sac-intake-file-drop__hint {
    display: block;
    margin-top: 8px;
    color: var(--sac-text);
    font-size: 13px;
}

.sac-child-intake-shell .sac-intake-file-input-hidden {
    position: absolute;
    left: -9999px;
    opacity: 0;
    width: 1px;
    height: 1px;
}

/* Internal notes (intake) */
.sac-child-intake-shell .sac-intake-internal-notes {
    margin-top: 24px;
    padding: 18px;
    background: #fff8e1;
    border: 1px solid #ffe082;
    border-radius: var(--sac-radius-lg);
}

.sac-child-intake-shell .sac-intake-internal-notes__title {
    margin: 0 0 6px;
    color: #7a5300;
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 17px;
    font-weight: 700;
}

.sac-child-intake-shell .sac-intake-internal-notes__lead {
    margin: 0 0 10px;
    color: #6b4f00;
    font-size: 13px;
}

.sac-child-intake-shell .sac-intake-internal-notes__label {
    display: block;
    font-weight: 600;
    margin-bottom: 4px;
    color: #5c4500;
}

.sac-child-intake-shell .sac-intake-internal-notes__foot {
    display: block;
    margin-top: 6px;
    color: #8a6d00;
    font-size: 13px;
}

/* Partner internal note box (edit) */
.sac-child-edit-shell .sac-edit-internal-note-box {
    margin-top: 12px;
    padding: 14px;
    background: #fff8e1;
    border: 1px solid #ffd15c;
    border-radius: var(--sac-radius-lg);
}

.sac-child-edit-shell .sac-edit-internal-note-box__label {
    display: block;
    font-weight: 700;
    color: #7a5300;
    margin-bottom: 4px;
}

.sac-child-edit-shell .sac-edit-internal-note-box__small {
    display: block;
    margin-bottom: 6px;
    color: #7a5300;
    font-size: 13px;
}

.sac-child-edit-shell .sac-edit-internal-note-box__foot {
    display: block;
    margin-top: 6px;
    color: #8a6d00;
    font-size: 13px;
}

/* Notices */
.sac-child-intake-shell .sac-notice,
.sac-child-edit-shell .sac-notice {
    border-radius: var(--sac-radius-lg);
    padding: 18px 22px;
    margin: 16px 0 20px;
    font-size: 15px;
    line-height: 1.5;
}

.sac-child-intake-shell .sac-notice p,
.sac-child-edit-shell .sac-notice p {
    margin: 0 0 10px;
}

.sac-child-intake-shell .sac-notice p:last-child,
.sac-child-edit-shell .sac-notice p:last-child {
    margin-bottom: 0;
}

.sac-child-intake-shell .sac-notice--success,
.sac-child-edit-shell .sac-notice--success {
    background: rgba(76, 175, 75, 0.1);
    border: 1px solid rgba(46, 125, 50, 0.35);
    border-left: 4px solid var(--sac-green-dark);
}

.sac-child-intake-shell .sac-notice--success h3,
.sac-child-edit-shell .sac-notice--success h3 {
    margin: 0 0 10px;
    color: var(--sac-green-dark);
    font-size: 20px;
}

.sac-child-intake-shell .sac-notice--error,
.sac-child-edit-shell .sac-notice--error {
    background: #fef2f2;
    border: 1px solid #fecaca;
    border-left: 4px solid #d63638;
    color: var(--sac-black);
}

.sac-child-intake-shell .sac-notice--error ul,
.sac-child-edit-shell .sac-notice--error ul {
    margin: 8px 0 0 20px;
    padding: 0;
}

.sac-child-intake-shell .sac-notice--warning,
.sac-child-edit-shell .sac-notice--warning {
    background: #fffbeb;
    border: 1px solid #fde68a;
    border-left: 4px solid #f59e0b;
}

.sac-child-intake-shell .sac-notice-cta,
.sac-child-edit-shell .sac-notice-cta {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-top: 8px;
    padding: 10px 22px;
    background: var(--sac-green-dark);
    color: var(--sac-white) !important;
    text-decoration: none !important;
    border-radius: var(--sac-radius);
    font-weight: 600;
    transition: var(--sac-transition);
}

.sac-child-intake-shell .sac-notice-cta:hover,
.sac-child-edit-shell .sac-notice-cta:hover {
    filter: brightness(1.06);
    color: var(--sac-white) !important;
}

/* Edit identity banner */
.sac-child-edit-shell .sac-child-edit-banner {
    display: flex;
    align-items: center;
    gap: 16px;
    background: rgba(76, 175, 75, 0.1);
    border: 1px solid rgba(46, 125, 50, 0.25);
    border-left: 4px solid var(--sac-green-dark);
    padding: 16px 20px;
    margin-bottom: 22px;
    border-radius: var(--sac-radius-lg);
}

.sac-child-edit-shell .sac-child-edit-banner__photo {
    width: 80px;
    height: 80px;
    object-fit: cover;
    border-radius: var(--sac-radius-lg);
    border: 1px solid var(--sac-border);
    flex-shrink: 0;
}

.sac-child-edit-shell .sac-child-edit-banner__title {
    margin: 0 0 4px;
    color: var(--sac-green-dark);
    font-size: 20px;
    font-weight: 700;
}

.sac-child-edit-shell .sac-child-edit-banner__meta {
    margin: 0;
    color: var(--sac-text);
    font-size: 14px;
}

.sac-child-edit-shell .sac-child-edit-banner__meta code {
    background: var(--sac-white);
    padding: 2px 6px;
    border-radius: 4px;
    border: 1px solid var(--sac-border);
}

/* Form actions */
.sac-child-intake-shell .sac-intake-form-actions,
.sac-child-edit-shell .sac-edit-form-actions {
    margin-top: 24px;
    display: flex;
    justify-content: flex-end;
    align-items: center;
    gap: 12px;
}

.sac-child-intake-shell .sac-intake-submit.sac-btn,
.sac-child-edit-shell .sac-edit-submit.sac-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 12px 28px;
    font-size: 15px;
    font-weight: 600;
    border-radius: var(--sac-radius-lg);
    border: 1px solid var(--sac-green-dark);
    background: linear-gradient(180deg, var(--sac-green-light) 0%, var(--sac-green-dark) 100%);
    color: var(--sac-white);
    cursor: pointer;
    line-height: 1.3;
}

.sac-child-intake-shell .sac-intake-submit.sac-btn:hover,
.sac-child-edit-shell .sac-edit-submit.sac-btn:hover {
    filter: brightness(1.05);
    color: var(--sac-white);
}

.sac-child-intake-shell .sac-intake-submit.sac-btn:active,
.sac-child-edit-shell .sac-edit-submit.sac-btn:active {
    transform: translateY(1px);
}

/* Notes threads headings inside edit shell */
.sac-child-edit-shell h4.sac-notes-thread-heading {
    margin: 12px 0 6px;
    font-size: 15px;
    color: var(--sac-navy);
    font-weight: 700;
}

.sac-child-edit-shell .sac-edit-notes-intro {
    margin: 0 0 12px;
    color: var(--sac-text);
    font-size: 15px;
    line-height: 1.5;
}

.sac-child-edit-shell .sac-edit-current-photo-wrap {
    margin: 0 0 8px;
    color: var(--sac-text);
}

.sac-child-edit-shell .sac-edit-current-photo-thumb {
    width: 100px;
    height: 100px;
    object-fit: cover;
    border-radius: var(--sac-radius-lg);
    border: 1px solid var(--sac-border);
    vertical-align: middle;
}

.sac-child-edit-shell .sac-edit-profile-file-input {
    display: block;
    margin-top: 8px;
}

.sac-child-edit-shell .sac-edit-file-hint {
    display: block;
    margin-top: 6px;
    color: var(--sac-text);
    font-size: 13px;
}

/* Staff / sponsor / ministry note cards (edit form) */
.sac-child-edit-shell .sac-edit-note-box {
    margin-top: 12px;
    padding: 14px;
    border-radius: var(--sac-radius-lg);
}

.sac-child-edit-shell .sac-edit-note-box__label {
    display: block;
    font-weight: 700;
    margin-bottom: 4px;
}

.sac-child-edit-shell .sac-edit-note-box__small {
    display: block;
    margin-bottom: 6px;
    font-size: 13px;
}

.sac-child-edit-shell .sac-edit-note-box--staff {
    background: #fff4ed;
    border: 1px solid #f6b680;
}

.sac-child-edit-shell .sac-edit-note-box--staff .sac-edit-note-box__label,
.sac-child-edit-shell .sac-edit-note-box--staff .sac-edit-note-box__small {
    color: #8a3b00;
}

.sac-child-edit-shell .sac-edit-note-box--staff .sac-edit-note-box__textarea {
    border-color: #f4a865;
    background: #fffaf5;
}

.sac-child-edit-shell .sac-edit-note-box--sponsor {
    background: #eef8ff;
    border: 1px solid #9cc8ef;
}

.sac-child-edit-shell .sac-edit-note-box--sponsor .sac-edit-note-box__label,
.sac-child-edit-shell .sac-edit-note-box--sponsor .sac-edit-note-box__small {
    color: #0a4f86;
}

.sac-child-edit-shell .sac-edit-note-box--sponsor .sac-edit-note-box__textarea {
    border-color: #7fb3e1;
    background: #f9fcff;
}

.sac-child-edit-shell .sac-edit-note-box--ministry {
    background: #fff8e1;
    border: 1px solid #ffd15c;
}

.sac-child-edit-shell .sac-edit-note-box--ministry .sac-edit-note-box__label,
.sac-child-edit-shell .sac-edit-note-box--ministry .sac-edit-note-box__small {
    color: #7a5300;
}

.sac-child-edit-shell .sac-edit-note-box--ministry .sac-edit-note-box__textarea--ministry {
    border-color: #e6bb4a;
    background: #fffdf6;
}

@media (max-width: 600px) {
    .sac-child-intake-shell,
    .sac-child-edit-shell {
        padding-left: 12px;
        padding-right: 12px;
    }

    .sac-child-intake-shell .sac-intake-card,
    .sac-child-edit-shell .sac-intake-card {
        padding: 16px 18px;
    }
}
