/* ============================================================
   Community compose sheet (New Post)
   ============================================================
   Own file, loaded after every other stylesheet, because
   `create-modal` is referenced ~355 times inside mobile.html.
   Editing rules in there meant competing with hundreds of older
   declarations and losing on source order or specificity; the
   form kept reverting no matter what was changed.

   Everything the sheet needs is declared here, once, scoped to
   .cpx-*. Declarations carry !important because the template's
   own composer rules already use it — loading last is not enough
   to beat an !important, so this file has to answer in kind.
   ============================================================ */

html body #create-modal.create-modal .cpx {
    display: flex !important;
    flex-direction: column !important;
    align-self: stretch !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
}

html body #create-modal.create-modal .cpx > * {
    align-self: stretch !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
}

/* ---------- header ---------- */

html body #create-modal.create-modal .cpx-head {
    position: relative !important;
    margin: 0 0 22px !important;
    padding-right: 52px !important;
}

html body #create-modal.create-modal .cpx-identity {
    display: block !important;
    margin-bottom: 6px !important;
    font-size: 12px !important;
    font-weight: 800 !important;
    letter-spacing: 0.08em !important;
    text-transform: uppercase !important;
    color: var(--text-secondary) !important;
    -webkit-text-fill-color: var(--text-secondary) !important;
}

html body #create-modal.create-modal .cpx-title {
    margin: 0 0 8px !important;
    font-size: 32px !important;
    font-weight: 800 !important;
    letter-spacing: -0.5px !important;
    line-height: 1.05 !important;
    color: var(--text-primary) !important;
    -webkit-text-fill-color: var(--text-primary) !important;
}

html body #create-modal.create-modal .cpx-sub {
    margin: 0 !important;
    font-size: 16px !important;
    font-weight: 400 !important;
    color: var(--text-secondary) !important;
    -webkit-text-fill-color: var(--text-secondary) !important;
}

html body #create-modal.create-modal .cpx-dismiss {
    position: absolute !important;
    top: 24px !important;
    right: 0 !important;
    width: 40px !important;
    height: 40px !important;
    display: grid !important;
    place-items: center !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 50% !important;
    background: color-mix(in srgb, var(--text-primary) 7%, transparent) !important;
    color: var(--text-primary) !important;
    -webkit-text-fill-color: var(--text-primary) !important;
    font-size: 16px !important;
    cursor: pointer !important;
    -webkit-tap-highlight-color: transparent !important;
    transition: background 0.16s ease, transform 0.16s cubic-bezier(0.32, 0.72, 0, 1) !important;
}

html body #create-modal.create-modal .cpx-dismiss:active {
    background: color-mix(in srgb, var(--text-primary) 14%, transparent) !important;
    transform: scale(0.92) !important;
}

/* ---------- fields ---------- */

html body #create-modal.create-modal .cpx-field {
    display: block !important;
    margin: 0 0 18px !important;
    padding: 0 !important;
    border: 0 !important;
}

html body #create-modal.create-modal .cpx-label {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    margin: 0 0 9px !important;
    font-size: 12px !important;
    font-weight: 800 !important;
    letter-spacing: 0.08em !important;
    text-transform: uppercase !important;
    color: var(--text-secondary) !important;
    -webkit-text-fill-color: var(--text-secondary) !important;
}

/* 17px, never under 16px: iOS zooms the page when a focused field
   has smaller text. */
html body #create-modal.create-modal .cpx-select,
html body #create-modal.create-modal .cpx-textarea {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    padding: 18px !important;
    border: 1px solid rgba(9, 9, 11, 0.14) !important;
    border-radius: 22px !important;
    background: #ffffff !important;
    color: var(--text-primary) !important;
    -webkit-text-fill-color: var(--text-primary) !important;
    font-family: inherit !important;
    font-size: 17px !important;
    font-weight: 650 !important;
    line-height: 1.3 !important;
    outline: none !important;
    box-shadow: none !important;
    appearance: none !important;
    -webkit-appearance: none !important;
}

html body #create-modal.create-modal .cpx-select {
    min-height: 60px !important;
    padding-right: 44px !important;
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 12 12'><path d='M2.5 4.5L6 8l3.5-3.5' fill='none' stroke='%23999' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/></svg>") !important;
    background-repeat: no-repeat !important;
    background-position: right 18px center !important;
}

html body #create-modal.create-modal .cpx-textarea {
    min-height: 176px !important;
    max-height: none !important;
    resize: none !important;
}

html body #create-modal.create-modal .cpx-select:focus,
html body #create-modal.create-modal .cpx-textarea:focus {
    border-color: var(--primary-color, #ff4d2e) !important;
    box-shadow: 0 0 0 4px rgba(var(--primary-rgb), 0.16) !important;
}

/* ---------- media preview ---------- */

html body #create-modal.create-modal .cpx-preview {
    display: none !important;
    width: 100% !important;
    margin: 0 0 18px !important;
    border: 0 !important;
    border-radius: 16px !important;
    overflow: hidden !important;
    background: transparent !important;
}

html body #create-modal.create-modal .cpx-preview img,
html body #create-modal.create-modal .cpx-preview video {
    display: block !important;
    width: 100% !important;
    max-height: 220px !important;
    object-fit: cover !important;
}

/* ---------- actions ---------- */

html body #create-modal.create-modal .cpx-actions {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 10px !important;
    margin: 0 !important;
    padding: 4px 0 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

/* Both buttons share the original Send Post metrics so they read
   as a pair: 54px tall, 16px, weight 950, 22px radius. */
html body #create-modal.create-modal .cpx-btn {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 9px !important;
    flex: 0 0 auto !important;
    width: 100% !important;
    max-width: 100% !important;
    min-height: 54px !important;
    margin: 0 !important;
    padding: 0 18px !important;
    border-radius: 22px !important;
    font-size: 16px !important;
    font-weight: 950 !important;
    letter-spacing: 0.01em !important;
    cursor: pointer !important;
    -webkit-tap-highlight-color: transparent !important;
    transition: opacity 0.2s ease, transform 0.15s ease, background 0.16s ease !important;
}

html body #create-modal.create-modal .cpx-btn--media {
    border: 1px solid rgba(9, 9, 11, 0.14) !important;
    background: #ffffff !important;
    color: var(--text-primary) !important;
    -webkit-text-fill-color: var(--text-primary) !important;
}

html body #create-modal.create-modal .cpx-btn--media:active {
    background: rgba(9, 9, 11, 0.04) !important;
}

html body #create-modal.create-modal .cpx-btn--media[data-has-media="1"] {
    border-color: color-mix(in srgb, var(--primary-color, #ff4d2e) 55%, transparent) !important;
    color: var(--primary-color, #ff4d2e) !important;
    -webkit-text-fill-color: var(--primary-color, #ff4d2e) !important;
}

/* The label and icon are targeted too: the app-wide typography
   override colours descendants directly, so styling only the
   button left dark text on the black fill. */
html body #create-modal.create-modal .cpx-btn--send,
html body #create-modal.create-modal .cpx-btn--send span,
html body #create-modal.create-modal .cpx-btn--send i {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

html body #create-modal.create-modal .cpx-btn--send {
    border: none !important;
    background: #09090b !important;
}

html body #create-modal.create-modal .cpx-btn--send:active {
    opacity: 0.9 !important;
}

html body #create-modal.create-modal .cpx-btn--send[disabled] {
    opacity: 0.45 !important;
    cursor: default !important;
}

html body #create-modal.create-modal .cpx-btn-clear {
    display: none !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 4px 0 !important;
    border: 0 !important;
    background: transparent !important;
    color: var(--text-secondary) !important;
    -webkit-text-fill-color: var(--text-secondary) !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    cursor: pointer !important;
}

/* ------------------------------------------------------------
   ID-level overrides.
   The template styles these buttons as `html body #create-modal
   #community-post-media-btn` — two IDs. A class selector cannot
   outrank that no matter how late it loads, so the same elements
   are re-declared here by ID.
   ------------------------------------------------------------ */

html body #create-modal.create-modal #community-post-media-btn {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 9px !important;
    flex: 0 0 auto !important;
    width: 100% !important;
    max-width: 100% !important;
    min-height: 54px !important;
    margin: 0 !important;
    padding: 0 18px !important;
    border: 1px solid rgba(9, 9, 11, 0.14) !important;
    border-radius: 22px !important;
    background: #ffffff !important;
    box-shadow: none !important;
    color: var(--text-primary) !important;
    -webkit-text-fill-color: var(--text-primary) !important;
    font-size: 16px !important;
    font-weight: 950 !important;
    letter-spacing: 0.01em !important;
}

html body #create-modal.create-modal #community-post-media-btn[data-has-media="1"] {
    border-color: color-mix(in srgb, var(--primary-color, #ff4d2e) 55%, transparent) !important;
    color: var(--primary-color, #ff4d2e) !important;
    -webkit-text-fill-color: var(--primary-color, #ff4d2e) !important;
}

html body #create-modal.create-modal #community-post-media-clear {
    width: 100% !important;
    margin: 0 !important;
    padding: 4px 0 !important;
    border: 0 !important;
    background: transparent !important;
    color: var(--text-secondary) !important;
    -webkit-text-fill-color: var(--text-secondary) !important;
    font-size: 13px !important;
    font-weight: 700 !important;
}

/* ------------------------------------------------------------
   Sheet position. Kept here rather than in the template so the
   top offset is not competing with the other create-modal
   padding rules.
   ------------------------------------------------------------ */
html body.community-active #create-modal.create-modal .modal-content,
html body #create-modal.create-modal .modal-content {
    padding-top: calc(210px + env(safe-area-inset-top, 0px)) !important;
    padding-bottom: calc(18px + env(safe-area-inset-bottom, 0px)) !important;
}
