/* CEO SHIELD MOBILE AI V4.2 FINAL */

#ceo_mobile_ai_overlay{
    padding:14px!important;
    box-sizing:border-box!important;
}

#ceo_mobile_ai_overlay .ceo-mobile-sheet{
    width:min(94vw,430px)!important;
    max-width:430px!important;
    max-height:calc(100dvh - 28px)!important;
    overflow-y:auto!important;
    padding:0!important;
    border-radius:18px!important;
    border:1px solid rgba(56,189,248,.32)!important;
    background:#172238!important;
    box-shadow:0 22px 70px rgba(0,0,0,.6)!important;
    box-sizing:border-box!important;
}

#ceo_mobile_ai_overlay .ceo-mobile-sheet-head{
    padding:16px!important;
    border-bottom:1px solid rgba(148,163,184,.16)!important;
}

#ceo_mobile_ai_overlay .ceo-mobile-sheet-head strong{
    color:#5eead4!important;
    font-size:18px!important;
    font-weight:950!important;
}

#ceo_mobile_ai_overlay .ceo-mobile-sheet-head span{
    margin-top:5px!important;
    color:#94a3b8!important;
    font-size:11px!important;
}

#ceo_mobile_ai_overlay .ceo-mobile-ai-notice{
    margin:14px 14px 0!important;
    padding:12px 13px!important;
    border:1px solid rgba(45,212,191,.28)!important;
    border-radius:11px!important;
    background:rgba(13,148,136,.08)!important;
    color:#cbd5e1!important;
    font-size:10px!important;
    line-height:1.6!important;
}

/* 기존 파일 input 숨김 */
#ceo_mobile_ai_file{
    position:absolute!important;
    width:1px!important;
    height:1px!important;
    opacity:0!important;
    overflow:hidden!important;
    pointer-events:none!important;
}

/* 큰 녹음파일 선택 */
#ceo_ai_v42_file_button{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:calc(100% - 28px)!important;
    min-height:56px!important;
    margin:14px!important;
    box-sizing:border-box!important;
    border:1px solid #34d399!important;
    border-radius:12px!important;
    background:linear-gradient(
        135deg,
        #3d937d,
        #4aa38e
    )!important;
    color:#fff!important;
    font-size:15px!important;
    font-weight:950!important;
    cursor:pointer!important;
}

/* 파일명 별도 박스 */
#ceo_ai_v42_filename{
    width:calc(100% - 28px)!important;
    min-height:58px!important;
    margin:0 14px 14px!important;
    padding:13px!important;
    box-sizing:border-box!important;
    display:flex!important;
    align-items:center!important;
    border:1px dashed rgba(148,163,184,.35)!important;
    border-radius:12px!important;
    background:#111a2d!important;
    color:#94a3b8!important;
    font-size:11px!important;
    word-break:break-all!important;
}

/* 기존 메타정보 */
#ceo_mobile_ai_overlay .ceo-mobile-ai-meta{
    margin:0 14px 14px!important;
    padding:13px!important;
    border-radius:11px!important;
    border:1px solid rgba(148,163,184,.10)!important;
    background:#111a2d!important;
    grid-template-columns:90px minmax(0,1fr)!important;
    gap:7px!important;
}

#ceo_mobile_ai_overlay .ceo-mobile-ai-meta span{
    color:#94a3b8!important;
    font-size:10px!important;
}

#ceo_mobile_ai_overlay .ceo-mobile-ai-meta strong{
    color:#fff!important;
    font-size:10px!important;
    overflow-wrap:anywhere!important;
}

/* 상태 안내 */
#ceo_ai_v42_prestatus{
    margin:0 14px 12px!important;
    padding:11px 12px!important;
    border-radius:10px!important;
    background:rgba(59,130,246,.14)!important;
    color:#93c5fd!important;
    font-size:10px!important;
}

/* 기존 pipeline을 최종형으로 */
#ceo_mobile_ai_overlay .ceo-mobile-pipeline{
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:7px!important;
    margin:0 14px 8px!important;
}

#ceo_mobile_ai_overlay .ceo-mobile-stage{
    min-width:0!important;
    min-height:68px!important;
    padding:9px 3px!important;
    border:1px solid rgba(148,163,184,.25)!important;
    border-radius:10px!important;
    background:#172238!important;
    color:#94a3b8!important;
    font-size:9px!important;
    font-weight:900!important;
    text-align:center!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    white-space:normal!important;
}

#ceo_mobile_ai_overlay .ceo-mobile-stage.active{
    color:#bfdbfe!important;
    border-color:#3b82f6!important;
    background:rgba(37,99,235,.15)!important;
}

#ceo_mobile_ai_overlay .ceo-mobile-stage.done{
    color:#a7f3d0!important;
    border-color:#10b981!important;
    background:rgba(5,150,105,.12)!important;
}

#ceo_ai_v42_eta{
    margin:0 14px 13px!important;
    text-align:center!important;
    color:#93c5fd!important;
    font-size:10px!important;
    font-weight:800!important;
}

/* progress */
#ceo_mobile_ai_overlay .ceo-mobile-progress{
    margin:0 14px 13px!important;
    height:7px!important;
}

/* 실시간 처리상태 */
#ceo_ai_v42_runtime{
    margin:0 14px 13px!important;
    padding:12px!important;
    border:1px solid rgba(96,165,250,.22)!important;
    border-radius:11px!important;
    background:#101a2d!important;
}

.ceo-ai-v42-runtime-head{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    margin-bottom:9px!important;
}

.ceo-ai-v42-runtime-head strong{
    color:#e2e8f0!important;
    font-size:11px!important;
}

#ceo_ai_v42_state{
    color:#5eead4!important;
    font-size:10px!important;
    font-weight:900!important;
}

.ceo-ai-v42-runtime-body{
    display:grid!important;
    grid-template-columns:65px minmax(0,1fr)!important;
    gap:9px!important;
    align-items:center!important;
}

#ceo_ai_v42_timer{
    padding:8px 6px!important;
    border-radius:8px!important;
    background:#14243c!important;
    color:#7dd3fc!important;
    font-size:10px!important;
    font-weight:900!important;
    text-align:center!important;
}

#ceo_ai_v42_message{
    min-width:0!important;
    color:#94a3b8!important;
    font-size:9px!important;
    line-height:1.4!important;
}

/* 기존 status는 runtime이 대신 표시 */
#ceo_mobile_ai_status{
    display:none!important;
}

/* 처리 직후 화면에 남는 AI 요약 */
#ceo_mobile_ai_summary_result{
    margin:0 14px 13px!important;
    padding:13px!important;
    border:1px solid rgba(52,211,153,.35)!important;
    border-radius:11px!important;
    background:rgba(6,78,59,.24)!important;
}

#ceo_mobile_ai_summary_result[hidden]{
    display:none!important;
}

#ceo_mobile_ai_summary_result strong{
    display:block!important;
    margin-bottom:8px!important;
    color:#6ee7b7!important;
    font-size:11px!important;
}

#ceo_mobile_ai_summary_result p{
    margin:0!important;
    color:#e2e8f0!important;
    font-size:11px!important;
    line-height:1.65!important;
    white-space:pre-wrap!important;
    word-break:keep-all!important;
}

/* 저장 검증 직후 표시되는 명확한 완료 팝업 */
.ceo-mobile-ai-complete-popup{
    position:fixed!important;
    inset:0!important;
    z-index:2147483647!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    padding:20px!important;
    box-sizing:border-box!important;
    background:rgba(2,6,23,.82)!important;
}

.ceo-mobile-ai-complete-popup[hidden]{
    display:none!important;
}

.ceo-mobile-ai-complete-card{
    width:min(92vw,380px)!important;
    max-height:82dvh!important;
    overflow-y:auto!important;
    padding:24px 20px 18px!important;
    box-sizing:border-box!important;
    border:1px solid rgba(52,211,153,.55)!important;
    border-radius:18px!important;
    background:#172238!important;
    box-shadow:0 24px 80px rgba(0,0,0,.65)!important;
    text-align:center!important;
}

.ceo-mobile-ai-complete-icon{
    width:54px!important;
    height:54px!important;
    margin:0 auto 12px!important;
    border-radius:50%!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    background:#059669!important;
    color:#fff!important;
    font-size:30px!important;
    font-weight:950!important;
}

.ceo-mobile-ai-complete-card h2{
    margin:0 0 7px!important;
    color:#6ee7b7!important;
    font-size:20px!important;
}

.ceo-mobile-ai-complete-card>strong{
    display:block!important;
    color:#fff!important;
    font-size:14px!important;
}

.ceo-mobile-ai-complete-card>p{
    margin:8px 0 14px!important;
    color:#cbd5e1!important;
    font-size:11px!important;
}

#ceo_mobile_ai_complete_summary{
    max-height:190px!important;
    overflow-y:auto!important;
    padding:12px!important;
    border-radius:10px!important;
    background:#101a2d!important;
    color:#e2e8f0!important;
    font-size:11px!important;
    line-height:1.6!important;
    text-align:left!important;
    white-space:pre-wrap!important;
}

#ceo_mobile_ai_complete_ok{
    width:100%!important;
    min-height:48px!important;
    margin-top:16px!important;
    border:1px solid #34d399!important;
    border-radius:11px!important;
    background:#176b55!important;
    color:#fff!important;
    font-size:14px!important;
    font-weight:950!important;
}

/* 동의 */
#ceo_mobile_ai_overlay .ceo-mobile-consent{
    margin:0 14px 12px!important;
    padding:0!important;
    color:#cbd5e1!important;
    font-size:9px!important;
}

/* 기존 시작버튼 숨기되 기능은 유지 */
#ceo_mobile_ai_start{
    position:absolute!important;
    width:1px!important;
    height:1px!important;
    opacity:0!important;
    overflow:hidden!important;
    pointer-events:none!important;
}

/* 최종 하단 버튼 */
#ceo_ai_v42_actions{
    display:grid!important;
    grid-template-columns:1fr 1.55fr!important;
    gap:9px!important;
    margin:0 14px 16px!important;
}

#ceo_ai_v42_reset,
#ceo_ai_v42_prepare{
    min-height:52px!important;
    border-radius:11px!important;
    font-size:12px!important;
    font-weight:950!important;
}

#ceo_ai_v42_reset{
    border:1px solid #475569!important;
    background:#27324c!important;
    color:#fff!important;
}

#ceo_ai_v42_prepare{
    border:1px solid #34d399!important;
    background:#175846!important;
    color:#fff!important;
}

#ceo_ai_v42_prepare:disabled{
    opacity:.45!important;
    cursor:not-allowed!important;
}

@media(max-width:430px){
    #ceo_mobile_ai_overlay{
        padding:8px!important;
    }

    #ceo_mobile_ai_overlay .ceo-mobile-sheet{
        width:100%!important;
        max-height:calc(100dvh - 16px)!important;
    }
}
