﻿@charset "UTF-8";

/* source: MasterPage.master.style1.css */
        /* FicharNet - barra cookies moderna (solo UI) */
        .fn-cookiebar {
            position: fixed;
            left: 0;
            right: 0;
            bottom: 0;
            z-index: 9999;
            background: #ffffff;
            border-top: 1px solid #e5e7eb;
            box-shadow: 0 -8px 24px rgba(0,0,0,.08);
            padding: 12px 14px;
        }

            .fn-cookiebar .fn-cookiebar-inner {
                max-width: 1100px;
                margin: 0 auto;
                display: flex;
                gap: 12px;
                align-items: center;
                justify-content: space-between;
                flex-wrap: wrap;
            }

            .fn-cookiebar .fn-cookiebar-text {
                color: #333;
                font-size: 14px;
                line-height: 1.4;
                flex: 1 1 520px;
            }

            .fn-cookiebar .fn-cookiebar-actions {
                display: flex;
                gap: 8px;
                align-items: center;
                flex: 0 0 auto;
            }

            .fn-cookiebar .btn {
                border-radius: 6px;
            }
    

.fn-chat-actions{display:flex; align-items:center; gap:6px;}
.fn-chat-header{display:flex; align-items:center; justify-content:space-between; padding:12px 12px; background:#f7f8fa; border-bottom:1px solid rgba(0,0,0,.06);}
.fn-chat-title strong{font-size:15px;}
.fn-chat-input{height:44px; font-size:15px; border-radius:12px;}
.fn-chat-footer{display:flex; gap:8px; padding:10px; border-top:1px solid rgba(0,0,0,.06); background:#fff;}
.fn-chat-send{width:44px; height:44px; border-radius:12px; padding:0; display:flex; align-items:center; justify-content:center; font-size:18px;}
/* Botón flotante (no depende de FontAwesome) */
.fn-chat-fab{display:flex; align-items:center; justify-content:center; font-size:24px; line-height:1;}

/* source: MasterPage.master.style2.css */
        /* ===== FicharNet: Top Loading Bar ===== */
        #fnTopLoader {
            position: fixed;
            left: 0;
            top: 0;
            height: 3px;
            width: 0%;
            z-index: 99999;
            background: #1F9DE8;
            box-shadow: 0 0 10px rgba(31,157,232,.55);
            opacity: 0;
            transition: width .25s ease, opacity .2s ease;
            pointer-events: none;
        }

            #fnTopLoader::after {
                content: "";
                position: absolute;
                right: 0;
                top: 0;
                width: 80px;
                height: 100%;
                background: linear-gradient(90deg, rgba(255,255,255,0), rgba(255,255,255,.65), rgba(255,255,255,0));
                opacity: .8;
            }
    

/* source: MasterPage.master.style3.css */
        /* ===== FicharNet: Menú Master con iconos (tonos azules como menu.ascx) ===== */
        .fnm-master > li > a {
            position: relative;
        }

        /* Desktop (mantiene tu estilo actual, solo icono un poco más vivo) */
        @media (min-width: 992px) {
            .fnm-master > li > a {
                display: inline-flex;
                align-items: center;
                gap: 8px;
                padding: 10px 12px;
                border-radius: 10px;
                font-weight: 700;
                letter-spacing: .2px;
                text-transform: uppercase;
            }

            .fnm-master .fnm-right {
                display: none;
            }

            .fnm-master .fnm-ico {
                opacity: .9;
            }
        }

        /* Móvil: tarjeta tipo menu.ascx (blanco + azules) */
        @media (max-width: 991px) {
            .navbar-collapse .fnm-master {
                float: none !important;
                display: block !important;
                width: 100% !important;
                margin: 10px 0 0 0 !important;
                margin-bottom: 14px !important;
                padding: 12px 0 6px !important;
                background: #fff;
                border-radius: 14px;
                box-shadow: 0 12px 26px rgba(0,0,0,.14);
                overflow: hidden;
            }

                .navbar-collapse .fnm-master > li {
                    float: none !important;
                    display: block !important;
                    list-style: none;
                    margin: 0 !important;
                }

                    .navbar-collapse .fnm-master > li + li {
                        border-top: 1px solid #edf0f5;
                    }

                    .navbar-collapse .fnm-master > li > a {
                        display: flex !important;
                        align-items: center;
                        justify-content: space-between;
                        padding: 14px 16px !important;
                        text-decoration: none !important;
                        color: #06468C !important;
                        background: transparent !important;
                    }

                        .navbar-collapse .fnm-master > li > a:hover,
                        .navbar-collapse .fnm-master > li > a:focus {
                            background: #eef2ff !important;
                            color: #06468C !important;
                        }

                .navbar-collapse .fnm-master .fnm-left {
                    display: flex;
                    align-items: center;
                    gap: 12px;
                    min-width: 0;
                }

                /* Icono como “píldora” circular azul */
                .navbar-collapse .fnm-master .fnm-ico {
                    width: 32px;
                    height: 32px;
                    min-width: 32px;
                    border-radius: 50%;
                    background: #f1f5fb;
                    border: 1px solid #d7deec;
                    display: flex;
                    align-items: center;
                    justify-content: center;
                    color: #06468C;
                    opacity: 1;
                    font-size: 16px;
                }

                .navbar-collapse .fnm-master .fnm-label {
                    font-weight: 700;
                    letter-spacing: .2px;
                    color: #06468C;
                    white-space: nowrap;
                    overflow: hidden;
                    text-overflow: ellipsis;
                }

                .navbar-collapse .fnm-master .fnm-right {
                    opacity: .55;
                    color: #06468C;
                    font-size: 22px;
                    line-height: 1;
                    margin-left: 10px;
                }
        }
    

/* source: MasterPage.master.style4.css */
        /* FN FIX TOP GAP */
        html, body { margin:0 !important; padding:0 !important; }
        body { padding-top:0 !important; }
        .navbar, .navbar-default-fixed { margin-top:0 !important; top:0 !important; }
        #wrapper, form { margin-top:0 !important; padding-top:0 !important; }
    

/* source: MasterPage.master.style5.css */
    .fn-chat-fab{
      position: fixed !important;
      right: 18px !important;
      bottom: 18px !important;
      z-index: 2147483647 !important;
      width: 54px !important;
      height: 54px !important;
      border-radius: 50% !important;
      padding: 0 !important;
      display: inline-flex !important;
      align-items: center !important;
      justify-content: center !important;
      box-shadow: 0 10px 25px rgba(0,0,0,.2) !important;
    }
    .fn-chat-panel{
      position: fixed !important;
      right: 18px !important;
      bottom: 84px !important;
      z-index: 2147483647 !important;
      width: 380px;
      max-width: calc(100vw - 36px);
      height: 520px;
      max-height: calc(100vh - 130px);
      background: #fff;
      border-radius: 14px;
      box-shadow: 0 18px 40px rgba(0,0,0,.25);
      overflow: hidden;
      border: 1px solid rgba(0,0,0,.08);
    }
    .fn-chat-panel.hidden{ display:none !important; }

    .fn-chat-header{
      display:flex;
      justify-content: space-between;
      align-items: flex-start;
      padding: 10px 12px;
      border-bottom: 1px solid rgba(0,0,0,.08);
      background: #f8f9fb;
    }
    .fn-chat-title strong{ font-size: 14px; }
    .fn-chat-title small{ font-size: 12px; }

    .fn-chat-body{
      padding: 12px;
      height: calc(100% - 118px);
      overflow-y: auto;
      background: #ffffff;
    }
    .fn-chat-footer{
      display:flex;
      gap: 8px;
      /* Más aire abajo para que el input no quede pegado al borde */
      padding: 12px 12px calc(22px + env(safe-area-inset-bottom)) !important;
      padding-bottom: calc(22px + constant(safe-area-inset-bottom)) !important; /* iOS antiguo */
      border-top: 1px solid rgba(0,0,0,.08);
      background: #fafafa;
    }
    .fn-chat-footer .form-control{ flex:1; }

    .fn-chat-bubble{
      max-width: 86%;
      margin: 8px 0;
      padding: 9px 10px;
      border-radius: 12px;
      line-height: 1.35;
      font-size: 13px;
      white-space: pre-wrap;
      word-break: break-word;
    }
    .fn-chat-bubble.user{
      margin-left: auto;
      background: #e7f1ff;
      border: 1px solid #d0e4ff;
    }
    .fn-chat-bubble.bot{
      margin-right: auto;
      background: #f3f3f3;
      border: 1px solid #ececec;
    }
    .fn-chat-bubble.sys{
      max-width: 100%;
      background: #fff8e6;
      border: 1px solid #ffe7a3;
      font-size: 12px;
    }
    .fn-chat-typing{
      opacity: .7;
      font-size: 12px;
      padding: 4px 2px 0 2px;
    }

    @media (max-width: 420px){
      .fn-chat-panel{ width: calc(100vw - 24px); right: 12px !important; bottom: 76px !important; }
      .fn-chat-fab{ right: 12px !important; bottom: 12px !important; }
    }

    /* Confirmación unificada (estilo GastosCierresV3) */
    .fnu-backdrop{position:fixed;inset:0;background:rgba(15,23,42,.42);z-index:12000;display:none}
    .fnu-backdrop.is-open{display:block}
    .fnu-modal{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%) scale(.98);width:min(560px,92vw);z-index:12001;display:none}
    .fnu-modal.is-open{display:block;animation:fnuPop .12s ease-out;transform:translate(-50%,-50%) scale(1)}
    .fnu-card{background:#fff;border:1px solid #e5e7eb;border-radius:14px;box-shadow:0 20px 50px rgba(2,6,23,.30);overflow:hidden}
    .fnu-h{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 14px;border-bottom:1px solid #eef2f7}
    .fnu-h h4{margin:0;font-size:18px;font-weight:900;color:#0f172a}
    .fnu-x{border:0;background:transparent;font-size:24px;line-height:1;color:#64748b;cursor:pointer;padding:0 4px}
    .fnu-b{padding:14px;color:#334155;line-height:1.45}
    .fnu-f{display:flex;justify-content:flex-end;gap:8px;padding:12px 14px;border-top:1px solid #eef2f7;background:#f8fafc}
    @keyframes fnuPop{from{opacity:.7;transform:translate(-50%,-50%) scale(.98)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}

    /* Unificación visual (breadcrumb, cabecera, volver, acciones y ayuda) */
    .breadcrumb{margin:0 0 12px;padding:0;background:transparent}
    .breadcrumb > li + li:before{content:"\203A";padding:0 7px;color:#94a3b8}
    .breadcrumb a{text-decoration:none}
    .fn-crumb-wrap{
        margin:0 0 10px;
        padding:8px 12px;
        border:1px solid #e8eef7;
        border-radius:10px;
        background:linear-gradient(180deg,#fff,#f8fbff);
    }
    .fn-crumb-wrap .breadcrumb{margin:0}
    .fn-crumb-wrap .breadcrumb > li{font-size:13px;font-weight:700;color:#64748b}
    .fn-crumb-wrap .breadcrumb > li > a{color:#38618f}
    .fn-crumb-wrap .breadcrumb > li > a:hover{color:#06468C;text-decoration:none}
    .fn-crumb-wrap .breadcrumb > li + li:before{content:"\203A";padding:0 8px;color:#9aa9bb}
    .fn-crumb-wrap .breadcrumb > .active{color:#06468C;font-weight:900}

    .top-row,
    .fn-toolbar,
    .page-topbar,
    .page-head,
    .title-row{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;flex-wrap:wrap;margin:6px 0 12px}

    .project,
    .h-title,
    .page-topbar .project,
    .fn-toolbar .fn-title,
    .page-head .ph-left h1{margin:0;color:#06468C;font-weight:900}

    .sub-title,
    .page-topbar .sub-title,
    .fn-toolbar .fn-sub,
    .page-head .sub{color:#6b7280;font-weight:700}

    .btn-header-back,
    .btn.fn-btn-back,
    .btn.btn-volver,
    .page-topbar .btn.btn-default,
    .page-head .btn.btn-default{border:1px solid #d9e2ef;border-radius:10px;background:#fff;color:#1f2937;font-weight:800;min-height:36px;padding:6px 12px;display:inline-flex;align-items:center;gap:6px;text-transform:none}
    .btn-header-back:hover,
    .btn.fn-btn-back:hover,
    .btn.btn-volver:hover,
    .page-topbar .btn.btn-default:hover,
    .page-head .btn.btn-default:hover{background:#f8fafc;border-color:#cbd5e1;color:#0f172a}
    .btn.fn-btn-back .glyphicon,
    .btn.btn-volver .glyphicon{font-size:13px;top:0}
    .btn.btn-volver,
    .btn.btn-volver:hover{box-shadow:none}

    /* Unificación botones de cabecera (Nuevo/Añadir/Volver) */
    .btn.fn-head-btn,
    .top-actions .btn,
    .ph-right .btn,
    .page-topbar .btn,
    .top-row .btn,
    .fn-toolbar .btn{
        border-radius:10px !important;
        min-height:36px;
        padding:6px 12px;
        font-weight:800;
        display:inline-flex;
        align-items:center;
        gap:6px;
        text-transform:none;
    }
    .btn.fn-head-btn .glyphicon,
    .top-actions .btn .glyphicon,
    .ph-right .btn .glyphicon,
    .page-topbar .btn .glyphicon,
    .top-row .btn .glyphicon,
    .fn-toolbar .btn .glyphicon,
    .btn.fn-head-btn i,
    .top-actions .btn i,
    .ph-right .btn i,
    .page-topbar .btn i,
    .top-row .btn i,
    .fn-toolbar .btn i{
        color:inherit;
        opacity:1;
        visibility:visible;
    }
    .btn.fn-head-btn.btn-primary .glyphicon,
    .btn.fn-head-btn.btn-success .glyphicon,
    .top-actions .btn.btn-primary .glyphicon,
    .ph-right .btn.btn-primary .glyphicon,
    .page-topbar .btn.btn-primary .glyphicon,
    .top-row .btn.btn-primary .glyphicon,
    .fn-toolbar .btn.btn-primary .glyphicon,
    .top-actions .btn.btn-success .glyphicon,
    .ph-right .btn.btn-success .glyphicon,
    .page-topbar .btn.btn-success .glyphicon,
    .top-row .btn.btn-success .glyphicon,
    .fn-toolbar .btn.btn-success .glyphicon{color:#fff !important}
    .btn.fn-head-btn.btn-default .glyphicon,
    .top-actions .btn.btn-default .glyphicon,
    .ph-right .btn.btn-default .glyphicon,
    .page-topbar .btn.btn-default .glyphicon,
    .top-row .btn.btn-default .glyphicon,
    .fn-toolbar .btn.btn-default .glyphicon,
    .top-actions .btn.fn-btn-back .glyphicon,
    .ph-right .btn.fn-btn-back .glyphicon,
    .page-topbar .btn.fn-btn-back .glyphicon,
    .top-row .btn.fn-btn-back .glyphicon,
    .fn-toolbar .btn.fn-btn-back .glyphicon{color:#1f2937 !important}

    /* Unificación toggle de vista (tarjetas/lista/trabajador) */
    .vista-toggle.btn-group{
        display:inline-flex !important;
        align-items:stretch !important;
        border:2px solid #06468C !important;
        border-radius:10px !important;
        overflow:hidden !important;
        background:#fff !important;
        box-shadow:none !important;
    }
    .fn-vista-toggle{display:inline-flex !important;align-items:stretch !important;border:2px solid #06468C !important;border-radius:10px !important;overflow:hidden !important;background:#fff !important;box-shadow:none !important}
    .vista-toggle.btn-group > .btn,
    .vista-toggle.btn-group > .btn-toggle-view,
    .vista-toggle.btn-group > .btn-icon{
        width:52px !important;
        min-width:52px !important;
        flex:0 0 52px !important;
        height:40px !important;
        padding:0 !important;
        margin:0 !important;
        display:inline-flex !important;
        align-items:center !important;
        justify-content:center !important;
        float:none !important;
        border:0 !important;
        border-radius:0 !important;
        box-shadow:none !important;
        outline:none !important;
        line-height:1 !important;
    }
    .fn-vista-toggle > .fn-vista-toggle-btn{width:52px !important;min-width:52px !important;flex:0 0 52px !important;height:40px !important;padding:0 !important;margin:0 !important;display:inline-flex !important;align-items:center !important;justify-content:center !important;float:none !important;border:0 !important;border-radius:0 !important;box-shadow:none !important;outline:none !important;line-height:1 !important}
    .vista-toggle.btn-group > .btn + .btn,
    .vista-toggle.btn-group > .btn-toggle-view + .btn-toggle-view,
    .vista-toggle.btn-group > .btn-icon + .btn-icon{
        border-left:1px solid rgba(6,70,140,.28) !important;
    }
    .fn-vista-toggle > .fn-vista-toggle-btn.fn-vista-toggle-split{border-left:1px solid rgba(6,70,140,.28) !important}
    .vista-toggle .btn-primary,
    .vista-toggle .btn-icon.active{
        background:#06468C !important;
        color:#fff !important;
    }
    .vista-toggle .btn-outline-primary,
    .vista-toggle .btn-icon{
        background:#fff !important;
        color:#06468C !important;
    }
    .vista-toggle .btn-primary .glyphicon,
    .vista-toggle .btn-primary i,
    .vista-toggle .btn-icon.active .glyphicon,
    .vista-toggle .btn-icon.active i{color:#fff !important}
    .vista-toggle .btn-outline-primary .glyphicon,
    .vista-toggle .btn-outline-primary i,
    .vista-toggle .btn-icon .glyphicon,
    .vista-toggle .btn-icon i{color:#06468C !important}
    .vista-toggle .btn-toggle-view .glyphicon,
    .vista-toggle .btn-toggle-view i,
    .vista-toggle .btn-icon .glyphicon,
    .vista-toggle .btn-icon i{font-size:18px;line-height:1}
    @media (max-width:767px){
        .vista-toggle.btn-group > .btn,
        .vista-toggle.btn-group > .btn-toggle-view,
        .vista-toggle.btn-group > .btn-icon{
            width:44px !important;
            min-width:44px !important;
            flex:0 0 44px !important;
            height:38px !important;
        }
        .fn-vista-toggle > .fn-vista-toggle-btn{width:44px !important;min-width:44px !important;flex:0 0 44px !important;height:38px !important}
    }

    .fn-actions,
    .page-actions,
    .form-actions,
    .action-buttons,
    .top-actions,
    .actions-mini,
    .lic-actions,
    .ab-actions{display:flex;align-items:center;gap:10px;justify-content:flex-end;flex-wrap:wrap}

    .fn-actions .btn-default,
    .form-actions .btn-default{order:1}
    .fn-actions .btn-primary,
    .fn-actions .btn-success,
    .form-actions .btn-primary,
    .form-actions .btn-success{order:2}
    .fn-actions .btn-danger,
    .form-actions .btn-danger{order:3}
    .actions-mini .btn-danger,
    .lic-actions .btn-danger{order:1}
    .actions-mini .btn-default,
    .lic-actions .btn-default{order:2}

    .fn-help-grid{display:grid;gap:10px}
    .fn-help .help-item,
    .fn-help .help-card,
    .help-box,
    .fn-help-box{border:1px solid #eef2ff;border-radius:14px;padding:12px;background:#fbfcff;margin:0 0 10px}
    .fn-help .help-item .t,
    .fn-help .help-card .hc-title,
    .fn-help-box .t,
    .help-box h4{display:flex;align-items:center;gap:8px;font-weight:900;color:#17375E;margin:0 0 6px}
    .fn-help .help-item .d,
    .fn-help .help-card .hc-text,
    .fn-help-box .d,
    .help-box p,
    .help-box li{color:#475569;font-size:13px;line-height:1.45}

    /* Unificación iconos de acción en listados */
    .btn-icon,
    .icon-link,
    .empresa-icon-link,
    .btn-icon-turno,
    .fn-toolbar-btn-icon{height:32px;min-width:32px;padding:0 8px;border:1px solid #dbe3ee;border-radius:8px;background:#fff;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;cursor:pointer;transition:all .15s ease}
    .btn-icon:hover,
    .icon-link:hover,
    .empresa-icon-link:hover,
    .btn-icon-turno:hover,
    .fn-toolbar-btn-icon:hover{background:#f1f5f9;border-color:#cbd5e1;text-decoration:none}
    .btn-icon .glyphicon,
    .icon-link .glyphicon,
    .empresa-icon-link .glyphicon,
    .btn-icon-turno .glyphicon,
    .fn-toolbar-btn-icon .glyphicon{color:#06468C}

    .btn-icon.btn-danger,
    .icon-link.btn-danger,
    .empresa-icon-link.btn-danger,
    .btn-icon-turno.btn-danger,
    .fn-toolbar-btn-icon.btn-danger{background:#d9534f;border-color:#d43f3a}
    .btn-icon.btn-danger:hover,
    .icon-link.btn-danger:hover,
    .empresa-icon-link.btn-danger:hover,
    .btn-icon-turno.btn-danger:hover,
    .fn-toolbar-btn-icon.btn-danger:hover{background:#c9302c;border-color:#ac2925}
    .btn-icon.btn-danger .glyphicon,
    .icon-link.btn-danger .glyphicon,
    .empresa-icon-link.btn-danger .glyphicon,
    .btn-icon-turno.btn-danger .glyphicon,
    .fn-toolbar-btn-icon.btn-danger .glyphicon{color:#fff}


