/* Voicepa posting forms. Keep the editor and uploader's own controls independent. */
.ap-form-wrapper.vp-aap-layout { width: 100%; max-width: none; min-width: 0; margin: 0; padding: 0; border: 0; background: transparent; box-shadow: none; }
.ap-form-wrapper.vp-aap-layout::before,
.ap-form-wrapper.vp-aap-layout::after { content: none; }
.vp-aap-composer {
    --ap-bg: #fff;
    --ap-surface: #fff;
    --ap-surface-soft: #faf6f8;
    --ap-surface-strong: #f4eaf0;
    --ap-border: #e4dce1;
    --ap-border-strong: #bba1af;
    --ap-text: #332d34;
    --ap-text-soft: #766a73;
    --ap-accent: #983763;
    --ap-accent-strong: #7e2b51;
    --ap-accent-soft: #f5e8ee;
    --ap-error: #aa3548;
    --ap-success-text: #356249;
    --ap-shadow-soft: 0 8px 24px rgb(53 28 43 / 10%);
    --ap-radius-md: 8px;
    width: 100%;
    max-width: none;
    min-width: 0;
    margin: 0;
    color: var(--ap-text);
    font: inherit;
    line-height: 1.6;
}
.vp-aap-composer .vp-aap-form,
.vp-aap-composer [data-vp-aap-field],
.vp-aap-composer .ap-form-subsection,
.vp-aap-composer .ap-submit-row { box-sizing: border-box; min-width: 0; }
.vp-aap-composer .ap-pro-front-form-title {
    margin: 0 0 18px;
    color: var(--ap-text);
    font-family: inherit;
    font-size: 21px;
    font-weight: 700;
    line-height: 1.4;
    letter-spacing: 0;
}
.vp-aap-composer .vp-aap-form {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 18px 20px;
    width: 100%;
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: var(--ap-surface);
    box-shadow: none;
}
.vp-aap-composer .vp-aap-form > * { min-width: 0; grid-column: 1 / -1; }
.vp-aap-composer .vp-aap-form > input[type="hidden"],
.vp-aap-composer .vp-aap-form > script,
.vp-aap-composer .vp-aap-form > style { display: none; }
.vp-aap-composer .vp-aap-form > [data-vp-aap-field],
.vp-aap-composer .vp-aap-form > .ap-form-subsection,
.vp-aap-composer .vp-aap-form > .ap-submit-row {
    margin: 0;
    grid-column: 1 / -1;
}
.vp-aap-composer [data-vp-aap-field] {
    position: relative;
    display: grid;
    align-content: start;
    gap: 6px;
    margin: 0;
    padding: 0;
    border: 0;
    background: transparent;
    box-shadow: none;
}
.vp-aap-composer .ap-pro-form-field,
.vp-aap-composer .ap-form-field { min-width: 0; max-width: 100%; }
.vp-aap-composer .label-wrap {
    display: flex;
    align-items: baseline;
    flex-wrap: wrap;
    gap: 5px 8px;
    min-height: 0;
    margin: 0;
    padding: 0;
}
.vp-aap-composer .label-wrap > label,
.vp-aap-composer .ap-subsection-label {
    display: inline;
    margin: 0;
    color: var(--ap-text);
    font-family: inherit;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.55;
    letter-spacing: 0;
}
.vp-aap-composer .label-wrap > label::first-letter {
    margin: 0;
    color: inherit;
    font: inherit;
}
.vp-aap-composer :is(.ap-required-badge, .ap-optional-badge) {
    display: inline-block;
    min-width: 0;
    margin: 0 0 0 6px;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    color: var(--ap-accent);
    font-size: 11px;
    font-weight: 500;
    line-height: 1.5;
    vertical-align: baseline;
}
.vp-aap-composer .ap-optional-badge { color: var(--ap-text-soft); }
.vp-aap-composer :is(.ap-pro-textfield, .ap-pro-textarea, .ap-simple-textarea, .ap-pro-select),
.vp-aap-composer .ap-kibun-section > textarea,
.vp-aap-composer .ap-pro-form-field > input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]):not([type="file"]):not([type="submit"]):not([type="button"]):not([type="range"]):not([type="color"]),
.vp-aap-composer :is(.date-setting-wrapper, .party--wrapper, .quotedaihon-wrapper) > input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]):not([type="file"]):not([type="range"]):not([type="color"]) {
    box-sizing: border-box;
    display: block;
    width: 100%;
    min-width: 0;
    max-width: 100%;
    min-height: 44px;
    height: auto;
    margin: 0;
    padding: 10px 12px;
    border: 1px solid var(--ap-border);
    border-radius: 8px;
    background: #fff;
    color: var(--ap-text);
    font-family: inherit;
    font-size: 15px;
    line-height: 1.5;
    box-shadow: none;
    transition: border-color .15s, background-color .15s;
}
.vp-aap-composer :is(.ap-pro-textfield, .ap-pro-textarea, .ap-simple-textarea, .ap-pro-select):focus,
.vp-aap-composer .ap-pro-form-field > input:focus {
    outline: none;
    border-color: var(--ap-accent);
    box-shadow: 0 0 0 2px var(--ap-accent-soft);
}
.vp-aap-composer :is(.ap-pro-textarea, .ap-simple-textarea) { min-height: 128px; resize: vertical; }
.vp-aap-composer .ap-simple-textarea.ap-form-content-editor { min-height: 200px; }
.vp-aap-composer .ap-kibun-section > textarea { min-height: 92px; resize: vertical; }
.vp-aap-composer :is(.ap-pro-textfield, .ap-pro-textarea)[readonly],
.vp-aap-composer .ap-pro-form-field > input[readonly] { background: #f6f3f5; color: var(--ap-text-soft); }
.vp-aap-composer .ap-pro-select:not([multiple]) {
    appearance: none;
    padding-right: 34px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none' stroke='%23766a73' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 8 4 4 4-4'/%3E%3C/svg%3E");
    background-size: 18px 18px;
    background-repeat: no-repeat;
    background-position: right 10px center;
}
.vp-aap-composer select.ap-multiple-select {
    height: auto !important;
    min-height: 132px;
    padding: 6px;
    background-image: none;
}
.vp-aap-composer select.ap-multiple-select option { padding: 6px 8px; }
.vp-aap-composer .ap-pro-filefield {
    box-sizing: border-box;
    width: 100%;
    min-height: 44px;
    margin: 0;
    padding: 0;
    color: var(--ap-text-soft);
    font-family: inherit;
    font-size: 14px;
}
.vp-aap-composer .ap-pro-filefield::file-selector-button {
    min-height: 44px;
    margin-right: 10px;
    padding: 8px 14px;
    border: 1px solid var(--ap-border);
    border-radius: 8px;
    background: var(--ap-surface-soft);
    color: var(--ap-accent-strong);
    font-family: inherit;
    font-size: 14px;
    font-weight: 600;
    line-height: 1.5;
    cursor: pointer;
}
.vp-aap-composer .ap-field-note,
.vp-aap-composer .ap-pro-tooltip-notes {
    position: static;
    display: block;
    margin: 5px 0 0;
    padding: 0;
    border: 0;
    background: transparent;
    color: var(--ap-text-soft);
    font-family: inherit;
    font-size: 12px;
    font-style: normal;
    line-height: 1.6;
    overflow-wrap: anywhere;
}
.vp-aap-composer .ap-pro-form-field :is(input, textarea, select):hover ~ .ap-pro-tooltip-notes {
    position: static;
    padding: 0;
    background: transparent;
    color: var(--ap-text-soft);
    font-family: inherit;
    font-size: 12px;
    font-style: normal;
    line-height: 1.6;
}
.vp-aap-composer .ap-pro-tooltip-notes::after { content: none; }
.vp-aap-composer :is(.ap-form-error, .ap-form-error-message, .ap-upload-limit-error) {
    margin: 0;
    color: var(--ap-error);
    font-size: 12px;
    line-height: 1.6;
    overflow-wrap: anywhere;
}
.vp-aap-composer :is(.ap-form-error, .ap-form-error-message, .ap-upload-limit-error, .ap-field-note):empty { display: none; }
.vp-aap-composer .ap-pro-form-success-msg {
    margin: 0 0 16px;
    padding: 10px 12px;
    border-left: 3px solid #729a81;
    border-radius: 0 6px 6px 0;
    background: #f0f6f2;
    color: var(--ap-success-text);
    font-size: 14px;
}
.vp-aap-composer .ap-pro-info-wrap { position: relative; display: inline-flex; width: auto; line-height: 1.5; }
.vp-aap-composer .ap-pro-info-notes-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: var(--ap-surface-strong);
    color: var(--ap-text-soft);
    font-family: inherit;
    font-size: 12px;
    font-weight: 600;
    line-height: 1;
    cursor: help;
}
.vp-aap-composer .ap-pro-info-notes { display: none; }
.vp-aap-composer .ap-pro-info-wrap:hover .ap-pro-info-notes,
.vp-aap-composer .ap-pro-info-wrap:focus-within .ap-pro-info-notes,
.vp-aap-composer .ap-pro-info-wrap.is-open .ap-pro-info-notes {
    display: block;
    position: absolute;
    top: calc(100% + 4px);
    left: 0;
    z-index: 30;
    width: max-content;
    max-width: min(280px, 65vw);
    padding: 10px 12px;
    border: 1px solid var(--ap-border);
    border-radius: 8px;
    background: #fff;
    color: var(--ap-text-soft);
    box-shadow: var(--ap-shadow-soft);
    font-family: inherit;
    font-style: normal;
    font-size: 12px;
    line-height: 1.6;
}
.vp-aap-composer .ap-pro-info-notes::after { content: none; }
.vp-aap-composer .ap-pro-info-wrap.vp-aap-help-ready:not(.is-open) .ap-pro-info-notes { display: none; }
.vp-aap-composer .ap-form-subsection,
.vp-aap-composer #edd-restrict-form,
.vp-aap-composer .quotedaihon-wrapper,
.vp-aap-composer .app-share-warp {
    min-width: 0;
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
}
.vp-aap-composer .ap-form-subsection { display: grid; gap: 6px; }
.vp-aap-composer #edd-restrict-form,
.vp-aap-composer .quotedaihon-wrapper { display: grid; gap: 12px; }
.vp-aap-composer .quotedaihon-post-content { width: 100%; max-width: 100%; border: 1px solid var(--ap-border); border-radius: 8px; background: #fff; }
.vp-aap-composer #hashtag-form { margin: 0; }
.vp-aap-composer #hashtag-container,
.vp-aap-composer ul.tagit {
    box-sizing: border-box;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 5px;
    min-height: 44px;
    margin: 0;
    padding: 5px 8px;
    border: 1px solid var(--ap-border);
    border-radius: 8px;
    background: #fff;
    list-style: none;
    cursor: text;
}
.vp-aap-composer #hashtag-container:focus-within,
.vp-aap-composer ul.tagit:focus-within { border-color: var(--ap-accent); box-shadow: 0 0 0 2px var(--ap-accent-soft); }
.vp-aap-composer #post_hashtags_input,
.vp-aap-composer ul.tagit li.tagit-new input {
    box-sizing: border-box;
    width: 100%;
    min-width: 0;
    min-height: 30px;
    margin: 0;
    padding: 3px 4px;
    border: 0;
    background: transparent;
    color: var(--ap-text);
    font: inherit;
    font-size: 14px;
    outline: none;
    box-shadow: none;
}
.vp-aap-composer #post_hashtags_input,
.vp-aap-composer ul.tagit li.tagit-new { flex: 1 1 140px; }
.vp-aap-composer ul.tagit li { float: none; margin: 0; }
.vp-aap-composer #hashtag-container .tag,
.vp-aap-composer ul.tagit li.tagit-choice {
    position: relative;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    max-width: 100%;
    margin: 0;
    padding: 3px 7px;
    border: 0;
    border-radius: 5px;
    background: var(--ap-accent-soft);
    color: var(--ap-accent-strong);
    font-size: 12px;
    line-height: 1.6;
    overflow-wrap: anywhere;
}
.vp-aap-composer ul.tagit li.tagit-choice-editable { padding-right: 24px; }
.vp-aap-composer .tag .remove-tag {
    display: inline-grid;
    place-items: center;
    min-width: 24px;
    min-height: 24px;
    margin: -3px -4px -3px 0;
    padding: 0;
    border: 0;
    border-radius: 4px;
    background: transparent;
    color: inherit;
    font: inherit;
    line-height: 1;
    box-shadow: none;
    cursor: pointer;
}
.vp-aap-composer .tag .remove-tag:hover { background: var(--ap-accent-soft); }
.vp-aap-composer .tag .remove-tag:focus-visible { outline: 2px solid var(--ap-accent); outline-offset: 1px; }
.vp-aap-composer :is(.ap-checkbox-wrap, .ap-radio-wrap) { display: flex; flex-wrap: wrap; align-items: flex-start; gap: 6px; }
.vp-aap-composer :is(.ap-checkbox-label, .ap-radio-label) {
    box-sizing: border-box;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-height: 42px;
    max-width: 100%;
    margin: 0;
    padding: 7px 10px;
    border: 1px solid var(--ap-border);
    border-radius: 7px;
    background: #fff;
    color: var(--ap-text);
    font-size: 14px;
    line-height: 1.5;
    cursor: pointer;
}
.vp-aap-composer :is(.ap-checkbox-label, .ap-radio-label):has(input:checked) { border-color: #c79baf; background: var(--ap-accent-soft); color: var(--ap-accent-strong); }
.vp-aap-composer :is(.ap-checkbox-label, .ap-radio-label).ap-pro-display-single { flex-basis: 100%; }
.vp-aap-composer :is(.ap-checkbox-label, .ap-radio-label) input,
.vp-aap-composer .ap-agreement-checkbox {
    flex: 0 0 auto;
    width: 17px;
    height: 17px;
    min-height: 0;
    margin: 0;
    accent-color: var(--ap-accent);
    transform: none;
}
.vp-aap-composer .ap-form-agreement-wrap { display: grid; grid-template-columns: 18px minmax(0, 1fr); gap: 6px 9px; margin: 0; padding: 12px 0 0; border-top: 1px solid var(--ap-border); }
.vp-aap-composer .ap-form-agreement-wrap .ap-agreement-checkbox { margin-top: 4px; }
.vp-aap-composer .ap-agreement-text { display: block; width: auto; margin: 0; font-size: 13px; line-height: 1.7; color: var(--ap-text-soft); }
.vp-aap-composer .ap-agreement-text > :first-child { margin-top: 0; }
.vp-aap-composer .ap-agreement-text > :last-child { margin-bottom: 0; }
.vp-aap-composer .ap-agreement-error { grid-column: 2; }
.vp-aap-composer :is(.ap-heart-rating, #heart-rating) { display: flex; flex-wrap: wrap; gap: 5px; margin: 6px 0 0; }
.vp-aap-composer .heart { display: inline-grid; place-items: center; width: 40px; height: 40px; border-radius: 7px; background: #f5f1f3; color: #baa5af; font-size: 22px; line-height: 1; cursor: pointer; }
.vp-aap-composer .heart.active { background: var(--ap-accent-soft); color: var(--ap-accent); }
.vp-aap-composer :is(.party--wrapper, .date-setting-wrapper) { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; }
.vp-aap-composer #party-points { flex: 0 0 92px; width: 92px; }
.vp-aap-composer #party-honbun { flex: 1 1 160px; width: auto; margin: 0; }
.vp-aap-composer .date-setting-wrapper > input[type="datetime-local"] { flex: 1 1 220px; width: auto; }
.vp-aap-composer #points-per-minute { width: 110px; }
.vp-aap-composer .ap-file-uploader,
.vp-aap-composer .ap-content-file-uploader { margin: 0; padding: 10px 12px; border: 1px dashed #cdbbc5; border-radius: 8px; background: #fcfafb; }
.vp-aap-composer .qq-uploader { width: 100%; margin: 0; }
.vp-aap-composer .qq-upload-button {
    box-sizing: border-box;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: auto;
    min-width: 110px;
    min-height: 40px;
    height: auto;
    margin: 0;
    padding: 8px 13px;
    border: 1px solid var(--ap-border);
    border-radius: 7px;
    background: #fff;
    color: var(--ap-accent-strong);
    font-family: inherit;
    font-size: 14px;
    font-weight: 600;
    line-height: 1.5;
    text-shadow: none;
    box-shadow: none;
    filter: none;
    cursor: pointer;
    z-index: auto;
}
.vp-aap-composer .qq-upload-button:hover { background: var(--ap-accent-soft); }
.vp-aap-composer .qq-upload-button:active { top: auto; }
.vp-aap-composer .qq-upload-button:focus-within { outline: 2px solid var(--ap-accent); outline-offset: 2px; }
/* The uploader owns its transparent, absolutely positioned file input. */
.vp-aap-composer .qq-upload-list { width: 100%; margin: 8px 0 0; padding: 0; list-style: none; }
.vp-aap-composer .qq-upload-list:empty { display: none; }
.vp-aap-composer .qq-upload-list li { margin: 4px 0 0; padding: 8px 10px; border-radius: 5px; background: #eee5eb; color: var(--ap-text); font-size: 12px; line-height: 1.5; animation: none; }
.vp-aap-composer .qq-upload-list li.qq-upload-success { margin: 4px 0 0; padding: 8px 10px; background: #eef5f0; color: var(--ap-success-text); }
.vp-aap-composer .qq-upload-list li.qq-upload-fail { background: #fbeef0; color: var(--ap-error); }
.vp-aap-composer .qq-progress-bar { background: #d8b8c8; box-shadow: none; }
.vp-aap-composer .qq-upload-file { overflow-wrap: anywhere; }
.vp-aap-composer .qq-upload-cancel { color: var(--ap-accent-strong); }
.vp-aap-composer .qq-upload-drop-area { background: #f5e8ee; color: var(--ap-accent-strong); border: 1px dashed var(--ap-accent); border-radius: 7px; }
.vp-aap-composer .qq-upload-drop-area-active { background: #ecd6e1; }
.vp-aap-composer .ap-pro-file-preview { display: flex; align-items: flex-start; flex-wrap: wrap; gap: 10px; margin: 10px 0 0; }
.vp-aap-composer .ap-pro-file-preview:empty { display: none; }
.vp-aap-composer .ap-pro-prev-holder { box-sizing: border-box; width: 132px; max-width: 100%; margin: 0; padding: 5px; border: 1px solid var(--ap-border); border-radius: 7px; background: #fff; }
.vp-aap-composer .ap-pro-prev-holder > img { display: block; max-width: 100%; height: auto; border-radius: 4px; }
.vp-aap-composer .ap-prev-name { margin: 0 0 4px; color: var(--ap-text-soft); font-size: 11px; line-height: 1.4; overflow-wrap: anywhere; }
.vp-aap-composer .ap-pro-preview-remove { top: 4px; right: 4px; display: inline-grid; place-items: center; width: 28px; height: 28px; padding: 0; background: #fff; border: 1px solid var(--ap-border); color: var(--ap-error); box-shadow: 0 1px 5px rgb(0 0 0 / 10%); }
.vp-aap-composer .ap-notify-plan-section { display: grid; gap: 6px; }
.vp-aap-composer .ap-plan-select-list { display: grid; gap: 8px; }
.vp-aap-composer .ap-plan-select-row { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 8px; align-items: center; }
.vp-aap-composer .ap-plan-select-actions { display: flex; gap: 4px; }
.vp-aap-composer .ap-plan-select-action { display: inline-grid; place-items: center; width: 40px; height: 44px; padding: 0; border: 1px solid var(--ap-border); border-radius: 7px; background: #fff; color: var(--ap-accent); font-size: 18px; cursor: pointer; }
.vp-aap-composer .ap-plan-select-action--remove { color: var(--ap-error); }
.vp-aap-composer .ap-plan-select-action:disabled { opacity: .4; cursor: default; }
.vp-aap-composer .ap-plan-select-wrap { min-width: 0; }
.vp-aap-composer .ap-plan-select-wrap select { margin: 0; }
/* Permission lookup and revenue allocation share one compact identity vocabulary. */
.vp-aap-composer .h-allow-read-wrap { margin: 0; }
.vp-aap-composer .h-allow-read-card { margin: 0; padding: 0; border: 0; background: transparent; }
.vp-aap-composer .h-allow-read-head { margin: 0 0 7px; }
.vp-aap-composer .h-allow-read-title { font-size: 14px; font-weight: 700; line-height: 1.5; color: var(--ap-text); }
.vp-aap-composer .h-allow-read-subtitle { margin-top: 3px; font-size: 12px; color: var(--ap-text-soft); }
.vp-aap-composer :is(.h-allow-read-input-wrap, .share-setting__user-field) { position: relative; min-width: 0; }
.vp-aap-composer .h-allow-read-search-icon { position: absolute; left: 12px; top: 50%; width: 18px; height: 18px; transform: translateY(-50%); fill: var(--ap-text-soft); pointer-events: none; }
.vp-aap-composer :is(.h-allow-read-input, .share-setting__user-input, .share-setting__percent-input) { box-sizing: border-box; width: 100%; min-width: 0; min-height: 44px; margin: 0; padding: 10px 12px; border: 1px solid var(--ap-border); border-radius: 8px; background: #fff; color: var(--ap-text); font-family: inherit; font-size: 14px; line-height: 1.5; box-shadow: none; }
.vp-aap-composer .h-allow-read-input { padding-left: 38px; }
.vp-aap-composer :is(.h-allow-read-input, .share-setting__user-input, .share-setting__percent-input):focus { outline: none; border-color: var(--ap-accent); box-shadow: 0 0 0 2px var(--ap-accent-soft); }
.vp-aap-composer :is(.h-allow-read-dropdown, .share-setting__suggestions) { position: absolute; z-index: 40; top: calc(100% + 4px); left: 0; right: 0; max-height: 240px; overflow: auto; overscroll-behavior: contain; border: 1px solid var(--ap-border); border-radius: 8px; background: #fff; box-shadow: var(--ap-shadow-soft); }
.vp-aap-composer :is(.h-allow-read-option, .share-setting__suggestion) { box-sizing: border-box; display: flex; align-items: center; gap: 8px; width: 100%; min-height: 48px; margin: 0; padding: 8px 10px; border: 0; border-radius: 0; background: #fff; color: var(--ap-text); font-family: inherit; text-align: left; cursor: pointer; }
.vp-aap-composer :is(.h-allow-read-option, .share-setting__suggestion):hover,
.vp-aap-composer :is(.h-allow-read-option, .share-setting__suggestion).is-active { background: var(--ap-accent-soft); }
.vp-aap-composer :is(.h-allow-read-avatar, .share-setting__avatar, .share-setting__selected-avatar, .share-setting__suggestion-avatar) { display: block; flex: 0 0 30px; width: 30px; height: 30px; overflow: hidden; border-radius: 50%; background: #f0e9ed; object-fit: cover; }
.vp-aap-composer :is(.share-setting__avatar, .share-setting__selected-avatar, .share-setting__suggestion-avatar) img { display: block; width: 100%; height: 100%; object-fit: cover; }
.vp-aap-composer :is(.h-allow-read-option-main, .h-allow-read-tag-text, .share-setting__identity-meta, .share-setting__suggestion-meta) { display: grid; min-width: 0; gap: 1px; }
.vp-aap-composer :is(.h-allow-read-option-name, .h-allow-read-tag-name, .share-setting__identity-name, .share-setting__suggestion-name) { display: block; color: var(--ap-text); font-size: 13px; font-weight: 600; line-height: 1.45; overflow-wrap: anywhere; }
.vp-aap-composer :is(.h-allow-read-option-user, .h-allow-read-tag-user, .share-setting__identity-sub, .share-setting__suggestion-id) { display: block; color: var(--ap-text-soft); font-size: 11px; line-height: 1.4; overflow-wrap: anywhere; }
.vp-aap-composer .h-allow-read-tags { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 8px; }
.vp-aap-composer .h-allow-read-tags:empty { display: none; }
.vp-aap-composer .h-allow-read-tag { display: inline-flex; align-items: center; gap: 6px; max-width: 100%; padding: 4px 6px; border: 1px solid var(--ap-border); border-radius: 22px; background: #faf7f9; }
.vp-aap-composer .h-allow-read-remove { display: inline-grid; place-items: center; flex: 0 0 30px; width: 30px; height: 30px; padding: 0; border: 0; border-radius: 50%; background: transparent; color: var(--ap-text-soft); font-size: 18px; cursor: pointer; }
.vp-aap-composer .h-allow-read-remove:hover { color: var(--ap-error); background: #f4e6eb; }
.vp-aap-composer .h-allow-read-status { margin: 6px 0 0; color: var(--ap-text-soft); font-size: 12px; line-height: 1.5; }
.vp-aap-composer .h-allow-read-status:empty { display: none; }
.vp-aap-composer .h-allow-read-status.is-error { color: var(--ap-error); }
.vp-aap-composer .share-setting__list { display: grid; gap: 0; width: 100%; margin: 0; padding: 0; list-style: none; }
.vp-aap-composer .share-setting__row { min-width: 0; margin: 0; padding: 8px 0; border-bottom: 1px solid #eee7ec; }
.vp-aap-composer .share-setting__row:first-child { padding-top: 0; }
.vp-aap-composer .share-setting__row:last-child { padding-bottom: 0; border-bottom: 0; }
.vp-aap-composer .share-setting__inner { display: flex; align-items: center; flex-wrap: nowrap; gap: 8px; min-width: 0; padding: 0; }
.vp-aap-composer :is(.share-setting__identity, .share-setting__user-field) { display: flex; align-items: center; gap: 8px; flex: 1 1 auto; min-width: 0; }
.vp-aap-composer .share-setting__control { flex: 0 0 38px; width: 38px; height: 44px; padding: 0; border: 1px solid var(--ap-border); border-radius: 7px; background: #fff; color: var(--ap-accent); font-size: 19px; line-height: 1; cursor: pointer; }
.vp-aap-composer .share-setting__control--remove { color: var(--ap-error); }
.vp-aap-composer .share-setting__selected-avatar { position: absolute; left: 8px; top: 50%; transform: translateY(-50%); pointer-events: none; }
.vp-aap-composer .share-setting__row.is-user-selected .share-setting__user-input { padding-left: 44px; }
.vp-aap-composer .share-setting__percent-wrap { display: inline-flex; align-items: center; gap: 5px; flex: 0 0 auto; min-width: 0; margin-left: auto; }
.vp-aap-composer .share-setting__percent-input { flex: 0 0 68px; width: 68px !important; min-width: 68px !important; max-width: 68px; padding: 10px 8px; text-align: right; }
.vp-aap-composer .share-setting__percent-unit { display: inline-flex; align-items: center; color: var(--ap-text-soft); font-size: 13px; }
.vp-aap-composer .share-setting__percent-note { color: var(--ap-text-soft); font-size: 11px; line-height: 1.5; }
.vp-aap-composer .share-setting__badge { padding: 3px 7px; border-radius: 5px; background: var(--ap-accent-soft); color: var(--ap-accent-strong); font-size: 11px; }
.vp-aap-composer :is(.share-setting__row--ghost, .share-setting__row[hidden], .share-setting__suggestions[hidden], .share-setting__selected-avatar[hidden], .h-allow-read-dropdown[hidden]) { display: none !important; }
/* Avatar type is a compact choice, not a second page inside the form. */
.vp-aap-composer .voicepa-call-avatar-kind { width: 100%; margin: 0; padding: 0; border: 0; border-radius: 0; background: transparent; color: var(--ap-text); box-shadow: none; }
.vp-aap-composer .voicepa-call-avatar-kind__head { display: grid; gap: 3px; margin: 0 0 8px; }
.vp-aap-composer .voicepa-call-avatar-kind__title { color: var(--ap-text); font-size: 14px; font-weight: 700; line-height: 1.5; }
.vp-aap-composer .voicepa-call-avatar-kind__lead { margin: 0; color: var(--ap-text-soft); font-size: 12px; line-height: 1.6; }
.vp-aap-composer .voicepa-call-avatar-kind__tabs { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; margin: 0 0 10px; }
.vp-aap-composer .voicepa-call-avatar-kind__tab { appearance: none; display: flex; align-items: center; gap: 9px; min-width: 0; min-height: 54px; padding: 8px 10px; border: 1px solid var(--ap-border); border-radius: 8px; background: #fff; color: var(--ap-text); font-family: inherit; text-align: left; cursor: pointer; }
.vp-aap-composer .voicepa-call-avatar-kind__tab:hover { background: var(--ap-surface-soft); }
.vp-aap-composer .voicepa-call-avatar-kind__tab.is-active { border-color: #bb819d; background: var(--ap-accent-soft); color: var(--ap-accent-strong); }
.vp-aap-composer .voicepa-call-avatar-kind__icon { display: inline-grid; place-items: center; flex: 0 0 32px; width: 32px; height: 32px; border-radius: 6px; background: #f2edf0; color: var(--ap-accent); font-size: 12px; font-weight: 700; }
.vp-aap-composer .voicepa-call-avatar-kind__tab-title { display: block; font-size: 14px; font-weight: 600; line-height: 1.5; }
.vp-aap-composer .voicepa-call-avatar-kind__tab-text { display: block; color: var(--ap-text-soft); font-size: 11px; line-height: 1.5; }
.vp-aap-composer .voicepa-call-avatar-kind__body { min-width: 0; border: 0; background: #fff; }
.vp-aap-composer .voicepa-call-avatar-kind__placeholder { padding: 7px 0; color: var(--ap-text-soft); font-size: 12px; }
.vp-aap-composer .voicepa-call-avatar-kind__panel { min-width: 0; padding: 0; }
.vp-aap-composer .voicepa-call-avatar-kind__panel[hidden] { display: none !important; }
.vp-aap-composer .voicepa-call-avatar-kind__error { display: none; margin: 6px 0 0; color: var(--ap-error); font-size: 12px; }
.vp-aap-composer .voicepa-call-avatar-kind.has-error .voicepa-call-avatar-kind__error { display: block; }
/* Rich editor keeps its toolbar sizing, content height and native overflow. */
.vp-aap-composer .wp-editor-wrap { min-width: 0; max-width: 100%; margin: 0; }
.vp-aap-composer .wp-editor-container { border-color: var(--ap-border); }
.vp-aap-composer .ap-submit-row {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-end;
    gap: 8px 10px;
    padding: 14px 0 0;
    border-top: 1px solid var(--ap-border);
    background: #fff;
}
.vp-aap-composer .ap-submit-row .ap-pro-submit-btn,
.vp-aap-composer .voicepa-draft-save__button {
    box-sizing: border-box;
    appearance: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    width: auto;
    min-width: 128px;
    min-height: 44px;
    height: auto;
    margin: 0;
    padding: 10px 18px;
    border: 1px solid transparent;
    border-radius: 8px;
    background: var(--ap-accent);
    color: #fff;
    font-family: inherit;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0;
    text-shadow: none;
    box-shadow: none;
    cursor: pointer;
}
.vp-aap-composer .ap-submit-row .ap-pro-submit-btn:hover { background: var(--ap-accent-strong); color: #fff; }
.vp-aap-composer .voicepa-draft-save { position: static; display: contents; margin: 0; }
.vp-aap-composer .voicepa-draft-save__button { min-width: 112px; border-color: var(--ap-border); background: #fff; color: var(--ap-accent-strong); font-weight: 600; }
.vp-aap-composer .voicepa-draft-save__button:hover { background: var(--ap-surface-soft); }
.vp-aap-composer .voicepa-draft-save__status,
.vp-aap-composer .voicepa-ap-front-save-status { flex: 1 1 100%; margin: 0; padding: 0; color: var(--ap-text-soft); font-size: 12px; line-height: 1.5; text-align: right; overflow-wrap: anywhere; }
.vp-aap-composer .voicepa-draft-save__status:empty,
.vp-aap-composer .voicepa-ap-front-save-status:empty { display: none; }
.vp-aap-composer .voicepa-draft-save__status[data-tone="error"] { color: var(--ap-error); }
.vp-aap-composer .voicepa-draft-save__status[data-tone="success"] { color: var(--ap-success-text); }
.vp-aap-composer .ap-front-loader { flex: 0 0 auto; width: 20px; height: 20px; margin: 0; }
.vp-aap-composer :is(.ap-pro-submit-btn, .voicepa-draft-save__button):disabled { opacity: .6; cursor: wait; }
.vp-aap-composer .math-captcha { display: flex; flex-wrap: wrap; align-items: center; gap: 7px; }
.vp-aap-composer #ap-captcha-result { box-sizing: border-box; width: 100px; min-width: 0; min-height: 44px; margin: 0; padding: 8px 10px; border: 1px solid var(--ap-border); border-radius: 8px; box-shadow: none; }
.vp-aap-composer :is(.ap-pro-submit-btn, .voicepa-draft-save__button, .ap-plan-select-action, .share-setting__control, .voicepa-call-avatar-kind__tab, .h-allow-read-remove, .heart, .ap-pro-info-notes-icon):focus-visible { outline: 2px solid var(--ap-accent); outline-offset: 3px; }
.vp-aap-composer .vp-aap-sr { position: absolute; width: 1px; height: 1px; padding: 0; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }
.vp-aap-composer .vp-aap-validation { margin: 0; padding: 12px 14px; border: 1px solid #e5c3cc; border-left: 3px solid var(--ap-error); border-radius: 7px; background: #fff8fa; color: var(--ap-error); font-size: 13px; line-height: 1.6; }
.vp-aap-composer .vp-aap-validation[hidden] { display: none; }
.vp-aap-composer .vp-aap-validation > strong { font-weight: 700; }
.vp-aap-composer .vp-aap-validation ul { margin: 4px 0 0; padding: 0; list-style: none; }
.vp-aap-composer .vp-aap-validation li { margin: 0; padding: 0; }
.vp-aap-composer .vp-aap-validation button { display: inline-block; margin: 0; padding: 4px 0; border: 0; background: transparent; color: var(--ap-error); font: inherit; text-align: left; text-decoration: underline; text-underline-offset: 3px; cursor: pointer; }
.vp-aap-composer .vp-aap-field-error :is(.ap-pro-textfield, .ap-pro-textarea, .ap-simple-textarea, .ap-pro-select),
.vp-aap-composer [aria-invalid="true"] { border-color: var(--ap-error); }
.vp-aap-composer [data-vp-aap-field] { scroll-margin-top: var(--vp-header-height, 150px); }
.vp-aap-autocomplete.ui-autocomplete { max-height: 240px; overflow-x: hidden; overflow-y: auto; overscroll-behavior: contain; padding: 4px; border: 1px solid #e4dce1; border-radius: 8px; background: #fff; color: #332d34; box-shadow: 0 8px 24px rgb(53 28 43 / 10%); font-family: inherit; font-size: 14px; }
.vp-aap-autocomplete .ui-menu-item { margin: 0; padding: 0; }
.vp-aap-autocomplete .ui-menu-item > a { min-height: 40px; padding: 8px 10px; border: 0; border-radius: 5px; color: #332d34; font-weight: 400; line-height: 1.5; }
.vp-aap-autocomplete .ui-menu-item > a:hover,
.vp-aap-autocomplete .ui-menu-item > a.ui-state-focus,
.vp-aap-autocomplete .ui-menu-item > a.ui-state-active { margin: 0; border: 0; background: #f5e8ee; color: #7e2b51; }
@media (min-width: 720px) {
    .vp-aap-composer .vp-aap-form { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .vp-aap-composer .vp-aap-form > [data-vp-aap-size="compact"],
    .vp-aap-composer .vp-aap-form > [data-vp-aap-kind="email"],
    .vp-aap-composer .vp-aap-form > [data-vp-aap-kind="url"],
    .vp-aap-composer .vp-aap-form > [data-vp-aap-kind="local_id"],
    .vp-aap-composer .vp-aap-form > [data-vp-aap-kind="points_per_minute"] { grid-column: auto; }
}
@media (max-width: 719px) {
    .vp-aap-composer .vp-aap-form { gap: 16px; }
    .vp-aap-composer :is(.ap-pro-textfield, .ap-pro-textarea, .ap-simple-textarea, .ap-pro-select, .h-allow-read-input, .share-setting__user-input, .share-setting__percent-input),
    .vp-aap-composer .ap-kibun-section > textarea,
    .vp-aap-composer .ap-pro-form-field > input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]):not([type="file"]):not([type="submit"]):not([type="button"]):not([type="range"]):not([type="color"]),
    .vp-aap-composer :is(.date-setting-wrapper, .party--wrapper, .quotedaihon-wrapper) > input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]):not([type="file"]):not([type="range"]):not([type="color"]),
    .vp-aap-composer #post_hashtags_input,
    .vp-aap-composer ul.tagit li.tagit-new input { font-size: 16px; }
    .vp-aap-composer .ap-simple-textarea.ap-form-content-editor { min-height: 180px; }
    .vp-aap-composer .ap-submit-row { gap: 8px; }
    .vp-aap-composer .ap-submit-row .ap-pro-submit-btn,
    .vp-aap-composer .voicepa-draft-save__button { flex: 1 1 120px; min-width: 0; }
    .vp-aap-composer .voicepa-call-avatar-kind__tab { padding: 8px; gap: 7px; }
    .vp-aap-composer .share-setting__inner { gap: 6px; }
    .vp-aap-composer .share-setting__percent-input { flex-basis: 60px; width: 60px !important; min-width: 60px !important; max-width: 60px; padding: 10px 6px; }
    .vp-aap-composer .share-setting__control { flex-basis: 34px; width: 34px; }
    .vp-aap-composer .share-setting__row.is-user-selected .share-setting__user-input { padding-left: 39px; }
    .vp-aap-composer .share-setting__selected-avatar { left: 6px; width: 26px; height: 26px; }
}
@media (prefers-reduced-motion: reduce) {
    .vp-aap-composer :is(.ap-pro-textfield, .ap-pro-textarea, .ap-simple-textarea, .ap-pro-select) { transition: none; }
}
