/*======================================================*/
/* La Escritura - Panel de Administración             */
/* Archivo.....: PCI_window.css                         */
/*======================================================*/

/*======================================================*/
/* VENTANA                                               */
/*======================================================*/

#PCI_window
{
    position:fixed;

    inset:0;

    z-index:10000;

    display:none;

    justify-content:center;
    align-items:center;

    padding:20px;

    box-sizing:border-box;

    background:
        rgba(0,0,0,.55);
}

/*======================================================*/
/* VENTANA ABIERTA                                       */
/*======================================================*/

#PCI_window.PCI_window-open
{
    display:flex;
}

/*======================================================*/
/* PANEL                                                 */
/*======================================================*/

.PCI_window-panel
{
    width:min(900px,100%);

    max-height:
        calc(100vh - 40px);

    display:flex;

    flex-direction:column;

    overflow:hidden;

    background:#ffffff;

    border-radius:12px;

    box-shadow:
        0 12px 40px
        rgba(0,0,0,.30);
}

/*======================================================*/
/* CABECERA                                              */
/*======================================================*/

.PCI_window-header
{
    flex-shrink:0;

    display:flex;

    justify-content:space-between;

    align-items:center;

    padding:15px 20px;

    background:#0D1B2A;

    border-bottom:
        1px solid #2b2d2e;
}

.PCI_window-title
{
    margin:0;

    color:#ffffff;

    font-family:
        Arial,
        sans-serif;

    font-size:1.25rem;

    font-weight:600;
}

/*======================================================*/
/* BOTÓN CERRAR                                          */
/*======================================================*/

.PCI_window-close
{
    width:40px;

    height:40px;

    padding:0;

    border:0;

    background:transparent;

    color:#ffffff;

    font-size:28px;

    line-height:1;

    cursor:pointer;

    display:flex;

    justify-content:center;

    align-items:center;
}

.PCI_window-close:hover
{
    opacity:.75;
}

/*======================================================*/
/* CONTENIDO                                             */
/*======================================================*/

.PCI_window-content
{
    flex:1;

    min-height:0;

    overflow-y:auto;

    padding:25px;

    color:#222222;

    background:#ffffff;
}

/*======================================================*/
/* PIE DE VENTANA                                        */
/*======================================================*/

.PCI_window-footer
{
    flex-shrink:0;

    min-height:40px;

    display:flex;

    justify-content:center;

    align-items:center;

    padding:8px 15px;

    box-sizing:border-box;

    color:#ffffff;

    background:#C48D2E;

    border-top:
        1px solid #D6B456;

    font-size:.9rem;
}

/*======================================================*/
/* CONTENIDO DE MÓDULO                                   */
/*======================================================*/

.PCI_module
{
    width:100%;

    box-sizing:border-box;
}

.PCI_module h3
{
    margin-top:0;

    color:#0D1B2A;
}

.PCI_admin-page {
    padding-bottom: 120px;
}

/*======================================================*/
/* COPIAS DE SEGURIDAD - ACORDEÓN                      */
/*======================================================*/

.PCI_backup-accordion
{
    width:100%;
    box-sizing:border-box;
}

.PCI_backup-section
{
    width:100%;
    margin-bottom:15px;
    border:1px solid #D6B456;
    box-sizing:border-box;
    background:#ffffff;
}

.PCI_backup-header
{
    width:100%;
    min-height:75px;

    display:flex;
    justify-content:space-between;
    align-items:center;

    padding:15px 20px;

    box-sizing:border-box;

    border:0;
    cursor:pointer;

    text-align:left;

    color:#ffffff;
    background:#0D1B2A;

    font-family:inherit;
}

.PCI_backup-header:hover
{
    background:#16283A;
}

.PCI_backup-title
{
    display:flex;
    flex-direction:column;

    align-items:flex-start;

    gap:6px;

    min-width:0;
}

.PCI_backup-title strong
{
    display:block;

    font-size:1.1rem;
}

.PCI_backup-summary
{
    display:block;

    font-size:.9rem;

    font-weight:normal;

    opacity:.9;
}

.PCI_backup-title strong
{
    font-size:1.1rem;
}

.PCI_backup-summary
{
    font-size:.9rem;
    font-weight:normal;
    opacity:.9;
}

.PCI_backup-arrow
{
    flex-shrink:0;

    margin-left:20px;

    font-size:.9rem;

    transition:
        transform .2s ease;
}

.PCI_backup-header[aria-expanded="true"]
.PCI_backup-arrow
{
    transform:rotate(180deg);
}

.PCI_backup-content
{
    display:none;

    padding:20px;

    box-sizing:border-box;

    color:#222222;
    background:#ffffff;
}

.PCI_backup-section.is-open
.PCI_backup-content
{
    display:block;
}

.PCI_backup-content p
{
    margin-top:0;
    margin-bottom:15px;
}

.PCI_backup-content h3
{
    margin-top:25px;
    margin-bottom:15px;

    color:#0D1B2A;
}

.PCI_backup-content .PCI_login-button
{
    margin-bottom:10px;
}

/*======================================================*/
/* BOTÓN DE COPIA DE SEGURIDAD                          */
/*======================================================*/

.PCI_backup-content .PCI_backup-button
{
    display:inline-block;

    padding:12px 34px;

    margin:10px 0 20px;

    border-radius:40px;

    border:1px solid #6d4826;

    background:#fffdf9;

    color:#8a623d;

    font-family:'TTFirsNeue',sans-serif;

    font-size:1rem;

    text-decoration:none;

    cursor:pointer;

    transition:
        background .25s ease,
        transform .20s ease,
        box-shadow .25s ease;

    box-sizing:border-box;
}

.PCI_backup-content .PCI_backup-button:hover
{
    background:#fffdf9;

    border-color:#8a623d;

    box-shadow:
        0 6px 16px rgba(109,72,38,.25);

    transform:translateY(-2px);
}

/*======================================================*/
/* BOTÓN GUARDAR - DICCIONARIO                          */
/*======================================================*/

.admin-dictionary-save-button
{
    min-width:120px;

    padding:9px 20px;

    border-radius:40px;
    border:1px solid #6b5326;
    background-image:
        linear-gradient(
            #6B0F1A,
            #C27C6D
        );
    color:#ffffff;
    font-family:'TTFirsNeue',sans-serif;
    font-size:1rem;

    font-weight:600;

    cursor:pointer;

    transition:
        background .25s ease,
        transform .20s ease,
        box-shadow .25s ease;
}

.admin-dictionary-save-button:hover
{
    background-image:
        linear-gradient(
            #cda35b,
            #cda35b
        );
    color:#000000;
    box-shadow:
        0 6px 16px
        rgba(184,138,42,.18);
}

.admin-dictionary-save-button:disabled
{
    cursor:default;

    opacity:.65;
}

.admin-bible-save
{
    min-width:120px;

    padding:9px 20px;

    border-radius:40px;

    border:1px solid #6b5326;

    background-image:
        linear-gradient(
            #6B0F1A,
            #C27C6D
        );

    color:#ffffff;

    font-family:'TTFirsNeue',sans-serif;

    font-size:1rem;

    font-weight:600;

    cursor:pointer;

    transition:
        background .25s ease,
        transform .20s ease,
        box-shadow .25s ease;
}

.admin-bible-save:hover
{
    background-image:
        linear-gradient(
            #cda35b,
            #cda35b
        );

    color:#000000;

    box-shadow:
        0 6px 16px
        rgba(184,138,42,.18);
}

.admin-bible-save:disabled
{
    cursor:default;

    opacity:.65;
}

/*======================================================*/
/* EDITOR DEL DICCIONARIO                               */
/*======================================================*/

.admin-dictionary-editor-wrap
{
    width:100%;
    box-sizing:border-box;
}

.admin-dictionary-toolbar
{
    width:100%;
    display:flex;
    flex-wrap:wrap;
    gap:6px;
    padding:8px;
    box-sizing:border-box;
    background:#f1f1f1;
    border:1px solid #cccccc;
    border-bottom:0;
    border-radius:6px 6px 0 0;
}

.admin-dictionary-toolbar button
{
    min-width:36px;
    height:34px;
    padding:4px 9px;
    border:1px solid #b8b8b8;
    border-radius:4px;
    background:#ffffff;
    color:#222222;
    font-family:Arial,sans-serif;
    font-size:.9rem;
    cursor:pointer;
}

.admin-dictionary-toolbar button:hover
{
    background:#e5e5e5;
}

.admin-dictionary-toolbar button:active
{
    background:#d5d5d5;
}

.admin-dictionary-editor
{
    width:100%;
    min-height:420px;
    max-height:calc(100vh - 240px);
    overflow-y:auto;
    box-sizing:border-box;
    padding:18px;
    border:1px solid #cccccc;
    border-radius:0 0 6px 6px;
    background:#ffffff;
    color:#222222;
    font-family:Arial,sans-serif;
    font-size:16px;
    line-height:1.55;
    outline:none;
}

.admin-dictionary-editor:focus
{
    border-color:#888888;
}

.admin-dictionary-editor p
{
    margin-top:0;
    margin-bottom:12px;
}

.admin-dictionary-save-button:disabled
{
    opacity:.7;
    cursor:default;
}


/*======================================================*/
/* BOTÓN ESTADO ANÁLISIS DICCIONARIO                    */
/*======================================================*/

.admin-dictionary-analysis-button
{
    width:24px;
    height:24px;
    padding:0;
    margin-right:6px;

    border:0;
    border-radius:4px;

    cursor:pointer;

    background:#d9534f;
}

/* Tiene contenido */

.admin-dictionary-analysis-button.has-content
{
    background:#28a745;
}

/* Sin contenido */

.admin-dictionary-analysis-button.no-content
{
    background:#d9534f;
}

/*======================================================*/
/* ESTADO ANÁLISIS DE PALABRA                           */
/*======================================================*/

.admin-dictionary-action
{
    display:flex;

    align-items:center;

    gap:6px;
}

/*------------------------------------------------------*/
/* Botón estado análisis                                */
/*------------------------------------------------------*/

.admin-dictionary-analysis-status
{
    width:18px;

    height:18px;

    padding:0;

    border:0;

    border-radius:50px;

    cursor:default;

    box-sizing:border-box;
}

/*------------------------------------------------------*/
/* Hay contenido                                        */
/*------------------------------------------------------*/

.admin-dictionary-analysis-status.is-complete
{
    background:#2e8b57;
}

/*------------------------------------------------------*/
/* Sin contenido                                        */
/*------------------------------------------------------*/

.admin-dictionary-analysis-status.is-empty
{
    background:#c62828;
}

/*======================================================*/
/* ADAPTACIÓN MÓVIL                                     */
/*======================================================*/

@media (max-width:1200px)
{
    .PCI_backup-header
    {
        min-height:80px;
        padding:14px 15px;
    }

    .PCI_backup-summary
    {
        font-size:.82rem;
    }

    .PCI_backup-content
    {
        padding:15px;
    }

    .PCI_backup-arrow
    {
        margin-left:10px;
    }

    /*======================================================*/
/* Botón Guardar — editor bíblico                      */
/*======================================================*/

.admin-bible-save
{
    display:inline-block;

    padding:10px 22px;

    border:1px solid #b88a2a;

    border-radius:4px;

    background:#b88a2a;

    color:#ffffff;

    font-size:0.95rem;

    font-weight:600;

    line-height:1.2;

    cursor:pointer;

    transition:
        background .20s ease,
        border-color .20s ease,
        transform .10s ease;
}

.admin-bible-save:hover
{
    background:#966f20;

    border-color:#966f20;
}

.admin-bible-save:active
{
    transform:translateY(1px);
}

.admin-bible-save:focus
{
    outline:2px solid #b88a2a;

    outline-offset:2px;
}
}