/* //CTA [14/11/2026], FICHAJEONLINE REVAMP, 2026 look for the time-clock app: navy #101126 + steel blue #668eaf, white cards on #f1f1f1, self-hosted Mulish, mobile-first clock-in page and tables.
   Loaded LAST (after bootstrap/custom/timezone) so it only overrides presentation; no markup or JS depends on it.
   Rollback: remove the <link> to this file from index.php and page/portion/header.php (or restore the backups). */

/* ---------- Typeface (SIL OFL, self-hosted, same files as argoiberica.com) ---------- */
@font-face{font-family:"Mulish";font-style:normal;font-weight:300 800;font-display:swap;src:url(fonts/mulish-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Mulish";font-style:normal;font-weight:300 800;font-display:swap;src:url(fonts/mulish-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

:root{
  --fo-navy:#101126;
  --fo-navy-2:#1c1d38;      /* hover on navy */
  --fo-steel:#668eaf;       /* accent / primary buttons */
  --fo-steel-hover:#557c9c;
  --fo-steel-soft:#e7eef5;  /* tinted backgrounds */
  --fo-link:#4a7397;
  --fo-bg:#f1f1f1;
  --fo-card:#ffffff;
  --fo-line:#dfe3e8;
  --fo-text:#24253a;
  --fo-muted:#6b7080;
  --fo-ok:#2f7d4f;
  --fo-ok-soft:#e5f2ea;
  --fo-ko:#b23a3a;
  --fo-ko-soft:#f8e7e7;
  --fo-radius:8px;
  --fo-shadow:0 1px 2px rgba(16,17,38,.06),0 4px 14px rgba(16,17,38,.06);
  --fo-font:"Mulish",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
}

/* ---------- Base ---------- */
html{position:relative;min-height:100%;-webkit-text-size-adjust:100%}
body{font-family:var(--fo-font)!important;background:var(--fo-bg)!important;color:var(--fo-text);font-weight:400;font-size:15px;line-height:1.5;margin-bottom:150px}
h1,h2,h3,h4,h5,h6,.navbar,.btn,.form-control,.tooltip,.popover,.modal{font-family:var(--fo-font)!important}
h1,h2,h3,h4,h5,h6{color:var(--fo-navy);font-weight:700;border-bottom-color:var(--fo-line);letter-spacing:-.005em}
h1{font-size:26px}h2{font-size:22px}h3{font-size:19px}h4{font-size:17px}
strong,b{font-weight:700}
a{color:var(--fo-link)}
a:hover,a:focus{color:var(--fo-navy)}
::selection{background:var(--fo-steel);color:#fff}
.text-muted{color:var(--fo-muted)}
.text-primary,.text-info{color:var(--fo-link)!important}
.text-success{color:var(--fo-ok)!important}
.text-danger{color:var(--fo-ko)!important}
@media(min-width:1200px){.container{width:100%;max-width:1200px}}

/* ---------- Top header (logo + date/clock) ---------- */
.header{background:#fff;color:var(--fo-muted);padding:10px 0;border-bottom:0;box-shadow:none}
.header .row{display:flex;align-items:center;flex-wrap:wrap}
.header .row:before,.header .row:after{display:none}
.fo-brand{display:inline-flex;align-items:center;gap:12px;text-decoration:none!important;min-height:52px}
.fo-brand{max-width:100%}
.fo-brand img,.fo-logo{display:block;width:auto!important;height:auto;max-height:52px;max-width:min(240px,100%);background:transparent!important;padding:0!important}
@media(max-width:767px){.fo-brand{min-height:44px}.fo-brand img,.fo-logo{max-height:40px}.fo-today{font-size:12px;line-height:1.5}.header .clock{margin:3px 0 0;font-size:13px}}
.fo-today{font-size:14px;color:var(--fo-muted);font-weight:600;text-align:right}
.fo-today b{font-weight:600}
.header .clock{display:inline-block;margin-left:8px;padding:3px 10px;border-radius:999px;background:var(--fo-steel-soft);color:var(--fo-navy);font-weight:700;font-variant-numeric:tabular-nums}

/* ---------- Main navigation (navy bar) ---------- */
.navbar-inverse{background:var(--fo-navy)!important;box-shadow:0 2px 8px rgba(16,17,38,.18);border:0!important;border-radius:0;margin-bottom:0;min-height:52px}
.navbar-inverse .navbar-nav>li>a{color:rgba(255,255,255,.86)!important;font-weight:600;font-size:14.5px;padding:15px 12px;line-height:22px;border-bottom:3px solid transparent}
.navbar-inverse .navbar-nav>li>a:hover,.navbar-inverse .navbar-nav>li>a:focus{color:#fff!important;background:var(--fo-navy-2)!important;border-bottom-color:var(--fo-steel)}
.navbar-inverse .navbar-nav>.open>a,.navbar-inverse .navbar-nav>.open>a:hover,.navbar-inverse .navbar-nav>.open>a:focus,
.navbar-inverse .navbar-nav>.active>a,.navbar-inverse .navbar-nav>.active>a:hover,.navbar-inverse .navbar-nav>.active>a:focus{color:#fff!important;background:var(--fo-navy-2)!important;border-bottom-color:var(--fo-steel)}
.navbar-inverse .navbar-nav>li.fo-current>a{color:#fff!important;border-bottom-color:var(--fo-steel)}
.navbar .dropdown-toggle:after{content:"";display:inline-block;margin-left:6px;vertical-align:middle;border-top:5px solid currentColor;border-left:4px solid transparent;border-right:4px solid transparent;opacity:.7}
.navbar .dropdown-menu{background:#fff;border:1px solid var(--fo-line);border-radius:0 0 var(--fo-radius) var(--fo-radius);box-shadow:var(--fo-shadow);padding:6px 0;min-width:220px}
.navbar .dropdown-menu li a{color:var(--fo-text)!important;font-weight:500;padding:10px 18px;border:0!important;background:transparent}
.navbar .dropdown-menu li a:hover,.navbar .dropdown-menu li a:focus{background:var(--fo-steel-soft)!important;color:var(--fo-navy)!important}
.navbar-inverse .navbar-toggle{border:1px solid rgba(255,255,255,.35)!important;margin:9px 15px 9px 0;padding:10px 11px;border-radius:6px}
.navbar-inverse .navbar-toggle:hover,.navbar-inverse .navbar-toggle:focus{background:var(--fo-navy-2)!important}
.navbar-inverse .navbar-toggle .icon-bar{background-color:#fff!important}
.navbar-inverse .navbar-collapse{border-color:rgba(255,255,255,.12)!important}
/* user menu */
.navbar .user-menu>.dropdown-menu{width:280px;padding:0;border-radius:0 0 var(--fo-radius) var(--fo-radius);overflow:hidden}
.navbar .user-menu>.dropdown-menu>li.user-header{background:var(--fo-navy)!important;height:auto;padding:16px;text-align:center}
.navbar .user-menu>.dropdown-menu>li.user-header>p{color:#fff!important;font-size:16px;font-weight:700;margin:0}
.navbar .user-menu>.dropdown-menu>li.user-footer{background:#fff;padding:12px}
.navbar .user-menu>.dropdown-menu>li.user-footer .btn-default{background:#fff!important;border:1px solid var(--fo-line)!important;color:var(--fo-navy)!important;padding:8px 12px!important}
.navbar .user-menu>.dropdown-menu>li.user-footer .btn-default:hover{background:var(--fo-steel-soft)!important}
.navbar .user-menu>.dropdown-menu>li.user-footer .btn-default i{margin-right:6px}
@media(min-width:768px) and (max-width:1199px){
  .navbar-inverse .navbar-nav>li>a{padding-left:8px;padding-right:8px;font-size:13.5px}
}
@media(max-width:767px){
  .navbar-inverse .navbar-collapse{background:var(--fo-navy)}
  .navbar-inverse .navbar-nav{margin-top:4px;margin-bottom:8px}
  .navbar-inverse .navbar-nav>li>a{padding:12px 16px;border-bottom:1px solid rgba(255,255,255,.07);font-size:16px}
  .navbar-inverse .navbar-nav .open .dropdown-menu{background:var(--fo-navy-2)!important;border:0;box-shadow:none;border-radius:0}
  .navbar-inverse .navbar-nav .open .dropdown-menu>li>a{color:rgba(255,255,255,.85)!important;padding:11px 16px 11px 30px;font-size:15px}
  .navbar-inverse .navbar-nav .open .dropdown-menu>li>a:hover,.navbar-inverse .navbar-nav .open .dropdown-menu>li>a:focus{background:var(--fo-navy)!important;color:#fff!important}
  .navbar .user-menu>.dropdown-menu{width:auto}
  .navbar .user-menu>.dropdown-menu>li.user-header{background:transparent!important;text-align:left;padding:10px 30px}
  .navbar .user-menu>.dropdown-menu>li.user-footer{background:transparent;padding:6px 30px 12px}
}

/* ---------- Content cards ---------- */
.content,.loginCont,.dashBlk{background:var(--fo-card);border:1px solid var(--fo-line);border-radius:var(--fo-radius);box-shadow:var(--fo-shadow)}
.content{margin:22px 0;padding:20px 24px 24px}
.contentAlt{margin:22px 0}
.content h3,.content h2,.content h4{border-bottom:1px solid var(--fo-line);padding-bottom:10px}
@media(max-width:767px){
  .content{margin:14px 0;padding:16px 14px 18px}
  h1{font-size:22px}h2{font-size:20px}h3{font-size:18px}
}

/* ---------- Forms ---------- */
.form-control{height:44px;border:1px solid #cdd4dc!important;border-radius:6px!important;box-shadow:none!important;color:var(--fo-text);font-size:15px;font-weight:400;background:#fff}
textarea.form-control{height:auto;min-height:96px}
select.form-control[multiple],select.form-control[size]{height:auto}
.form-control:hover{border-color:#aebbc8!important}
.form-control:focus{border-color:var(--fo-steel)!important;box-shadow:0 0 0 3px rgba(102,142,175,.22)!important;outline:0}
label{color:var(--fo-navy);font-weight:600;font-size:14px}
.help-block{color:var(--fo-muted);font-size:13px}
.input-group-addon{background:var(--fo-steel-soft)!important;color:var(--fo-steel)!important;border:1px solid #cdd4dc!important;border-right:0!important;border-radius:6px 0 0 6px!important;min-width:46px}
.input-group .form-control:last-child{border-radius:0 6px 6px 0!important}
.input-group .form-control:first-child{border-radius:6px 0 0 6px!important}
.input-group-addon+.form-control{border-left:0!important}

/* ---------- Buttons ---------- */
.btn{border-radius:6px!important;font-weight:700!important;letter-spacing:.01em;padding:9px 16px;border-width:1px;transition:background-color .15s,border-color .15s,box-shadow .15s;text-shadow:none!important}
.btn:focus,.btn:active:focus{outline:0;box-shadow:0 0 0 3px rgba(102,142,175,.3)}
.btn-lg{padding:12px 20px;font-size:17px}
.btn-sm,.btn-xs,.btn-form{padding:5px 10px;font-size:13px}
.btn-primary,.btn-success,.btn-info{background:var(--fo-steel)!important;border-color:var(--fo-steel)!important;color:#fff!important}
.btn-primary:hover,.btn-primary:focus,.btn-success:hover,.btn-success:focus,.btn-info:hover,.btn-info:focus{background:var(--fo-steel-hover)!important;border-color:var(--fo-steel-hover)!important;color:#fff!important}
.btn-warning,.btn-inverse{background:var(--fo-navy)!important;border-color:var(--fo-navy)!important;color:#fff!important}
.btn-warning:hover,.btn-warning:focus,.btn-inverse:hover,.btn-inverse:focus{background:#2a2b47!important;border-color:#2a2b47!important;color:#fff!important}
.btn-danger{background:#fff!important;border-color:#e1b4b4!important;color:var(--fo-ko)!important}
.btn-danger:hover,.btn-danger:focus{background:var(--fo-ko-soft)!important;border-color:var(--fo-ko)!important;color:var(--fo-ko)!important}
.btn-default{background:#fff!important;border-color:#cdd4dc!important;color:var(--fo-navy)!important}
.btn-default:hover,.btn-default:focus{background:var(--fo-steel-soft)!important;border-color:var(--fo-steel)!important}
.btn[disabled],.btn.disabled{opacity:.55!important;cursor:not-allowed}
.btn.btn-login{background:var(--fo-steel)!important;border-color:var(--fo-steel)!important;color:#fff!important;height:50px;font-size:16px;font-weight:700}
.btn.btn-login:hover,.btn.btn-login:focus{background:var(--fo-steel-hover)!important;border-color:var(--fo-steel-hover)!important;color:#fff!important}

/* ---------- Labels / badges / alerts ---------- */
.label{border-radius:999px;font-weight:700;padding:.3em .75em;letter-spacing:.02em}
.label-success,.bg-success{background-color:var(--fo-ok)!important}
.label-danger,.bg-danger{background-color:var(--fo-ko)!important}
.label-primary,.label-info,.bg-primary,.bg-info{background-color:var(--fo-steel)!important}
.label-warning,.bg-warning{background-color:#c08a1e!important}
.label-inverse,.bg-inverse{background-color:var(--fo-navy)!important}
.alertMsg{border-radius:var(--fo-radius)!important;border:1px solid transparent!important;border-left-width:5px!important;font-weight:600;font-size:15px;padding:12px 40px 12px 14px!important;margin:16px 0!important;color:var(--fo-text)!important;box-shadow:none!important;position:relative}
.alertMsg.success,.alertMsg.success:hover{background:var(--fo-ok-soft)!important;border-color:var(--fo-ok)!important}
.alertMsg.danger,.alertMsg.danger:hover{background:var(--fo-ko-soft)!important;border-color:var(--fo-ko)!important}
.alertMsg.warning,.alertMsg.warning:hover{background:#fbf3e2!important;border-color:#c08a1e!important}
.alertMsg.info,.alertMsg.info:hover,.alertMsg.primary,.alertMsg.primary:hover,.alertMsg.default,.alertMsg.default:hover{background:var(--fo-steel-soft)!important;border-color:var(--fo-steel)!important}
.alertMsg.inverse,.alertMsg.inverse:hover{background:var(--fo-navy)!important;border-color:var(--fo-navy)!important;color:#fff!important}
.alertMsg span i,.alertMsg i{margin-right:8px}
.alertMsg .alert-close{color:var(--fo-text)!important;opacity:.55;position:absolute;right:14px;top:10px;font-weight:700}

/* ---------- Tabs, panels, wells, accordion ---------- */
.nav-tabs>li>a{border:1px solid var(--fo-line)!important;border-radius:6px 6px 0 0!important;background:#f7f8fa!important;color:var(--fo-muted)!important;font-weight:600}
.nav-tabs>li>a:hover{background:var(--fo-steel-soft)!important;color:var(--fo-navy)!important}
.nav-tabs>li.active>a,.nav-tabs>li.active>a:hover,.nav-tabs>li.active>a:focus{background:#fff!important;color:var(--fo-navy)!important;border-top:3px solid var(--fo-steel)!important}
.panel{border-radius:var(--fo-radius);border:1px solid var(--fo-line)!important;box-shadow:none}
.panel-heading{border-radius:var(--fo-radius) var(--fo-radius) 0 0;background:#f7f8fa!important;border-bottom:1px solid var(--fo-line)!important;color:var(--fo-navy)!important}
.panel-primary>.panel-heading,.panel-info>.panel-heading{background:var(--fo-steel)!important;color:#fff!important}
.panel-inverse>.panel-heading{background:var(--fo-navy)!important;color:#fff!important}
.well{border-radius:var(--fo-radius);background:#f7f8fa;border-color:var(--fo-line)}
.accordion-heading{background:#f7f8fa;border-radius:6px}
.accordion-heading .accordion-toggle{color:var(--fo-navy)}

/* ---------- Tables ---------- */
.table{font-size:14px;background:#fff;color:var(--fo-text)}
.table>thead>tr>th{background:var(--fo-navy);color:#fff;font-weight:700;font-size:12.5px;letter-spacing:.04em;text-transform:uppercase;border:0!important;padding:10px 10px!important;vertical-align:middle}
.table>tbody>tr>td,.table>tbody>tr>th,.table>tfoot>tr>td{padding:9px 10px!important;border-top:1px solid #edf0f3!important;vertical-align:middle}
.table>tbody>tr:nth-child(even)>td{background:#f8f9fb}
.table>tbody>tr:hover>td{background:var(--fo-steel-soft)}
.infoTable td{font-size:14px}
.infoKey{background:#f7f8fa!important;border-color:var(--fo-line)!important;color:var(--fo-navy)}
.infoVal{border-color:var(--fo-line)!important}
/* responsive data table already used by the app (stacked rows on phones, data-th labels filled by js/fo-2026.js) */
.rwd-table{width:100%;border-collapse:collapse}
.rwd-table th{background:var(--fo-navy)!important;color:#fff!important;font-weight:700;font-size:12.5px;letter-spacing:.04em;border:0!important}
.rwd-table tr{border-color:var(--fo-line)!important}
.rwd-table td:not([data-th]):before,.rwd-table td[data-th=""]:before{display:none!important}
@media(min-width:768px){
  .rwd-table th,.rwd-table td{padding:10px 12px!important}
  .rwd-table th:first-child,.rwd-table td:first-child{padding-left:12px!important}
  .rwd-table tbody tr:nth-child(even) td{background:#f8f9fb}
  .rwd-table tbody tr:hover td{background:var(--fo-steel-soft)}
}
@media(max-width:767px){
  .rwd-table thead,.rwd-table tr:has(>th){display:none!important}
  .rwd-table tr{display:block;background:#fff;border:1px solid var(--fo-line)!important;border-radius:var(--fo-radius);margin:0 0 12px;padding:6px 0;box-shadow:0 1px 2px rgba(16,17,38,.05)}
  .rwd-table td{display:block;border:0!important;padding:5px 14px!important;margin:0!important;font-size:15px;word-break:break-word}
  .rwd-table td:before{color:var(--fo-muted)!important;font-weight:700!important;font-size:12px;text-transform:uppercase;letter-spacing:.04em;width:auto!important;min-width:38%;display:inline-block}
  .rwd-table td i{font-size:20px;margin:0 10px 0 0!important}
  /* other tables scroll sideways instead of overflowing the page */
  table.table{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;white-space:nowrap}
  .content{overflow-x:hidden}
}

/* ---------- Modals ---------- */
.modal-content{border:0;border-radius:var(--fo-radius);box-shadow:0 18px 50px rgba(16,17,38,.35);overflow:hidden}
.modal-header{background:var(--fo-navy);border-bottom:0;padding:14px 18px}
.modal-header .modal-title,h4.modal-title{color:#fff!important;font-weight:700;font-size:16px;letter-spacing:.03em;border:0;padding:0;margin:0}
.modal-header .close{color:#fff;opacity:.8;text-shadow:none;margin-top:0}
.modal-header .close:hover{opacity:1;color:#fff}
.modal-body{padding:18px}
.modal-footer{background:#f7f8fa;border-top:1px solid var(--fo-line);padding:12px 18px}
@media(min-width:768px){.modal-dialog{width:640px}}
@media(max-width:767px){
  .modal-dialog{margin:12px}
  .modal-footer .btn{display:block;width:100%;margin:0 0 8px!important}
  .modal-footer .btn+.btn{margin-left:0!important}
}

/* ---------- Dashboard / clock-in page ---------- */
.dashBlk{overflow:hidden;min-height:0;display:flex;align-items:stretch}
.iconBlk{float:none;flex:0 0 96px;min-width:96px;height:auto;display:flex;align-items:center;justify-content:center}
.iconBlk i{font-size:46px;line-height:1;color:rgba(255,255,255,.92)}
.iconBlk.info,.iconBlk.primary{background:var(--fo-steel)!important}
.iconBlk.success,.iconBlk.inverse{background:var(--fo-navy)!important}
.iconBlk.warning{background:#c08a1e!important}
.iconBlk.danger{background:var(--fo-ko)!important}
.contentBlk{flex:1 1 auto;padding:22px 20px;text-align:center;font-size:16px;color:var(--fo-muted);font-weight:600}
.timeWorked{display:inline-block;font-size:40px;font-weight:800;color:var(--fo-navy);letter-spacing:-.01em;margin:4px 0;font-variant-numeric:tabular-nums}
.clockstatus{display:inline-block;font-size:18px!important;margin:6px 0 14px!important;padding:6px 16px;border-radius:999px;font-weight:800}
.clockstatus b{font-weight:800}
.clockstatus.green,.workStatus.green{background:var(--fo-ok-soft);color:var(--fo-ok)!important}
.clockstatus.red,.workStatus.red{background:var(--fo-ko-soft);color:var(--fo-ko)!important}
.clockstatus:before{content:"";display:inline-block;width:10px;height:10px;border-radius:50%;background:currentColor;margin-right:8px;vertical-align:1px}
.clockBtn{margin-top:4px}
.clockBtn .btn{display:block;width:100%;max-width:420px;margin:0 auto 10px!important;padding:15px 18px!important;font-size:18px!important;min-height:58px}
.clockBtn .btn i{margin-right:8px}
.col-dashBlk{margin-bottom:20px}
@media(max-width:1000px){.col-dashBlk{margin-top:0}}
@media(max-width:767px){
  .dashBlk{flex-direction:column}
  .iconBlk{flex:0 0 auto;min-height:6px;padding:0;height:6px}
  .iconBlk i{display:none}
  .contentBlk{padding:18px 16px 20px}
  .timeWorked{font-size:36px}
  .clockBtn .btn{max-width:none;font-size:19px!important;min-height:62px}
  /* clock-in card first on phones: it is what employees come for */
  .contentAlt>.row{display:flex;flex-direction:column}
  .contentAlt>.row>.col-dashBlk:nth-child(2){order:-1}
}

/* ---------- Login page ---------- */
body.fo-login{margin-bottom:0;min-height:100vh;display:flex;flex-direction:column}
body.fo-login>*{flex-shrink:0}
body.fo-login .fo-login-main{flex:1 0 auto;width:100%}
.fo-login .header{border-bottom:0}
.fo-login-hero{background:var(--fo-navy);color:#fff;padding:34px 0 120px;text-align:center}
.fo-login-hero h1{color:#fff;border:0;margin:0 0 6px;padding:0;font-size:26px;font-weight:800}
.fo-login-hero p{margin:0;color:rgba(255,255,255,.75);font-size:15px}
.fo-login .loginCont{max-width:440px;margin:-96px auto 30px;padding:6px 6px 4px}
.login{padding:22px 24px 18px}
.login h2{color:var(--fo-navy);font-size:22px;font-weight:800;letter-spacing:0;margin:0 0 6px;border:0;padding:0}
.login .input-group{width:100%}
.login .input-group span{background:var(--fo-steel-soft)!important;color:var(--fo-steel)!important}
.login .input-group-addon{border:1px solid #cdd4dc!important;border-right:0!important}
.login .input-group input,.login .form-control{height:50px;font-size:16px;font-weight:400}
.login small{display:block;margin:10px 0 16px;text-align:right}
.login small.pull-right{float:none!important}
.login small a{font-size:14px;font-weight:600;color:var(--fo-link)}
.login small a i{color:var(--fo-steel)}
.login button{font-weight:700;margin-bottom:6px}
@media(max-width:767px){
  .fo-login-hero{padding:24px 0 104px}
  .fo-login-hero h1{font-size:22px}
  .fo-login .loginCont{margin:-86px 0 24px}
  .login{padding:18px 16px 14px}
}

/* ---------- Footer ---------- */
#footer-default{position:absolute;bottom:0;left:0;width:100%;height:auto!important;background:var(--fo-navy)!important;border-top:0!important;color:rgba(255,255,255,.72);padding:22px 0 20px!important;text-align:center;font-size:14px}
body.fo-login #footer-default{position:static}
#footer-default .fo-footer-name{color:#fff!important;font-weight:800;font-size:15px;margin:0 0 6px}
#footer-default p{color:rgba(255,255,255,.72)!important;font-size:13.5px;margin:0;line-height:1.7}
#footer-default a,#footer-default p a{color:#a9c1d6!important;text-decoration:none}
#footer-default a:hover,#footer-default p a:hover{color:#fff!important;text-decoration:underline!important}
.fo-legal-links{list-style:none;margin:6px 0 0;padding:0;display:flex;flex-wrap:wrap;justify-content:center;gap:4px 18px}
.fo-legal-links li{display:inline-block}
.fo-powered{margin-top:6px!important;font-size:12px!important;color:rgba(255,255,255,.5)!important}
@media(max-width:767px){body{margin-bottom:190px}}

/* ---------- Calendar, date pickers ---------- */
.fc-header-title h2{border:0;font-size:20px}
.fc-state-default{background:#fff!important;background-image:none!important;border:1px solid var(--fo-line)!important;color:var(--fo-navy)!important;text-shadow:none!important;box-shadow:none!important}
.fc-state-active,.fc-state-down{background:var(--fo-steel)!important;color:#fff!important}
.fc-widget-header{background:var(--fo-navy);color:#fff}
.fc-state-highlight{background:var(--fo-steel-soft)!important}
.daterangepicker td.active,.daterangepicker td.active:hover{background:var(--fo-steel)!important}
.daterangepicker .ranges li.active,.daterangepicker .ranges li:hover{background:var(--fo-steel)!important;border-color:var(--fo-steel)!important;color:#fff!important}

/* ---------- Legal pages (privacidad.php, aviso-legal.php, cookies.php) ---------- */
.fo-legal{max-width:860px;margin:26px auto 40px}
.fo-legal .content{padding:28px 32px 30px}
.fo-legal h1{font-size:26px;border-bottom:3px solid var(--fo-steel);padding-bottom:12px;margin-bottom:18px}
.fo-legal h2{font-size:18px;border:0;padding:0;margin:26px 0 8px}
.fo-legal p,.fo-legal li{font-size:15px;line-height:1.7;color:var(--fo-text)}
.fo-legal ul{padding-left:20px}
.fo-legal table{width:100%;border-collapse:collapse;margin:10px 0 6px;font-size:14px}
.fo-legal table th{background:var(--fo-navy);color:#fff;text-align:left;padding:9px 10px;font-weight:700}
.fo-legal table td{border-bottom:1px solid var(--fo-line);padding:9px 10px;vertical-align:top}
.fo-legal .fo-updated{color:var(--fo-muted);font-size:13px;margin-top:24px}
.fo-legal .fo-back{display:inline-block;margin-bottom:14px;font-weight:700}
@media(max-width:767px){.fo-legal{margin:14px auto 24px}.fo-legal .content{padding:18px 16px 20px}.fo-legal h1{font-size:22px}.fo-legal table{display:block;overflow-x:auto}}
/* //CTA FICHAJEONLINE REVAMP */

/* //CTA [15/11/2026], FICHAJEONLINE I18N, Language switcher (CA · ES · EN): small and discreet, active language highlighted; top right of the white header on the login, legal and app pages */
.fo-lang{display:inline-flex;align-items:center;gap:0 12px;font-family:var(--fo-font);font-size:12px;font-weight:700;line-height:1;letter-spacing:.04em;white-space:nowrap}
.fo-lang a{position:relative;display:inline-block;padding:4px 7px;border-radius:999px;color:var(--fo-steel)!important;text-decoration:none!important}
.fo-lang a+a:before{content:"\00b7";position:absolute;left:-9px;top:50%;transform:translateY(-50%);color:#b9c6d3;font-weight:400;pointer-events:none}
.fo-lang a:hover,.fo-lang a:focus{color:var(--fo-navy)!important;background:var(--fo-steel-soft)}
.fo-lang a.is-active{background:var(--fo-navy);color:#fff!important}
.fo-login .header .container{display:flex;align-items:center;justify-content:space-between;gap:10px}
.fo-login .header .container:before,.fo-login .header .container:after{display:none}
.fo-app .header .fo-lang{margin:0 0 4px}
@media(max-width:767px){.fo-lang{font-size:11px;gap:0 10px}.fo-lang a{padding:4px 6px}.fo-lang a+a:before{left:-8px}}
/* //CTA FICHAJEONLINE I18N */

/* //CTA [15/11/2026], FICHAJEONLINE REGISTRE, Time record report (page/registre.php) and quick date buttons on the old report pages */
.fo-reg{padding-top:18px;padding-bottom:30px}
.fo-reg__head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}
.fo-reg__title{margin:0;font-size:24px}
.fo-reg__title .fa{color:var(--fo-steel)}
.fo-reg__filters{margin:0 0 10px}
.fo-reg__emp{display:flex;align-items:center;gap:10px;margin:0;font-weight:600;max-width:460px}
.fo-reg__emp span{white-space:nowrap}
.fo-reg__quick,.fo-quick{display:flex;flex-wrap:wrap;gap:8px;margin:6px 0 12px}
.fo-pill{display:inline-block;padding:8px 14px;border-radius:999px;border:1px solid var(--fo-line);background:var(--fo-card);color:var(--fo-navy);font-weight:600;font-size:14px;line-height:1.2;text-decoration:none;cursor:pointer;transition:background .15s,border-color .15s}
.fo-pill:hover,.fo-pill:focus{border-color:var(--fo-steel);color:var(--fo-navy);text-decoration:none;background:var(--fo-steel-soft)}
.fo-pill.is-active{background:var(--fo-navy);border-color:var(--fo-navy);color:#fff}
.fo-reg__range{display:flex;flex-wrap:wrap;align-items:flex-end;gap:10px;margin:0 0 16px}
.fo-reg__range label{margin:0;font-weight:600;font-size:13px;color:var(--fo-muted)}
.fo-reg__range label span{display:block;margin-bottom:3px}
.fo-reg__range input{min-width:160px}
.fo-reg__warn{color:var(--fo-ko);font-weight:600}
.fo-reg__res{background:var(--fo-card);border-radius:var(--fo-radius);box-shadow:var(--fo-shadow);padding:18px 18px 8px;scroll-margin-top:12px}
.fo-reg__period{font-size:16px;margin:0 0 12px;color:var(--fo-text)}
.fo-reg__kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px}
.fo-kpi{border:1px solid var(--fo-line);border-radius:var(--fo-radius);padding:10px 14px;background:#fff}
.fo-kpi span{display:block;font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:var(--fo-muted)}
.fo-kpi b{display:block;font-size:26px;line-height:1.2;color:var(--fo-navy);font-variant-numeric:tabular-nums}
.fo-kpi--warn{border-color:#f0c9c9;background:var(--fo-ko-soft)}
.fo-kpi--warn b{color:var(--fo-ko)}
.fo-reg__table{margin-bottom:10px}
.fo-reg__table>thead>tr>th{border-bottom:2px solid var(--fo-line);color:var(--fo-muted);font-size:12px;text-transform:uppercase;letter-spacing:.04em}
.fo-reg__table td,.fo-reg__table th{vertical-align:middle!important}
.fo-reg__table .num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
.fo-reg__table tfoot th{border-top:2px solid var(--fo-navy)!important;color:var(--fo-navy);font-size:15px}
.fo-reg__day{white-space:nowrap}
.fo-reg__day b{text-transform:capitalize;display:inline-block;min-width:88px}
.fo-reg__day span{color:var(--fo-muted)}
.fo-reg__days tr.is-weekend td{background:#f7f8fa}
.fo-reg__days tr.is-empty td{color:var(--fo-muted)}
.fo-reg__days tr.is-today td{box-shadow:inset 3px 0 0 var(--fo-steel)}
.fo-reg__week td{background:var(--fo-steel-soft)!important;color:var(--fo-navy);font-weight:600}
.fo-reg__dash{color:#b6bcc6}
.fo-chip{display:inline-block;margin:2px 4px 2px 0;padding:3px 9px;border-radius:6px;background:var(--fo-steel-soft);color:var(--fo-navy);font-weight:600;font-size:14px;font-variant-numeric:tabular-nums;white-space:nowrap}
.fo-chip--warn{background:var(--fo-ko-soft);color:var(--fo-ko)}
.fo-chip--live{background:var(--fo-ok-soft);color:var(--fo-ok)}
.fo-flag{display:inline-block;margin:2px 4px 2px 0;padding:2px 8px;border-radius:999px;font-size:12px;font-weight:600;white-space:nowrap}
.fo-flag--warn{background:var(--fo-ko-soft);color:var(--fo-ko)}
.fo-flag--live{background:var(--fo-ok-soft);color:var(--fo-ok)}
.fo-flag--info{background:#eef0f4;color:var(--fo-muted)}
.fo-reg__empty{color:var(--fo-muted);text-align:center;padding:18px 0}
.fo-reg__legend{font-size:12px;color:var(--fo-muted);margin:6px 0 10px}
@media(max-width:767px){
  .fo-reg__kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
  .fo-kpi b{font-size:22px}
  .fo-reg__res{padding:12px 10px 4px}
  .fo-reg__emp{flex-direction:column;align-items:stretch;gap:4px}
  .fo-reg__range input{min-width:0;width:100%}
  .fo-reg__range label{flex:1 1 40%}
  .fo-pill{padding:7px 12px;font-size:13px}
  .fo-reg__day b{min-width:0;display:block}
}
@media print{
  .no-print,.navbar,.header,.fo-header,footer,.footer,.fo-footer,.fo-lang,#cookie-banner{display:none!important}
  body{background:#fff!important;margin:0!important}
  .fo-reg__res{box-shadow:none;padding:0}
  .fo-reg__days tr.is-weekend td,.fo-reg__week td{-webkit-print-color-adjust:exact;print-color-adjust:exact}
}
/* //CTA FICHAJEONLINE REGISTRE */

/* //CTA [15/11/2026], FICHAJEONLINE REGISTRE, Phones: each day becomes a small card (day + total on one line, sessions and notes below) so nothing is cut off */
.fo-reg__table thead th{color:rgba(255,255,255,.88)!important}
@media(max-width:767px){
  .fo-reg__days thead{display:none}
  .fo-reg__days,.fo-reg__days tbody,.fo-reg__days tfoot{display:block;width:100%}
  .fo-reg__days tr{display:grid;grid-template-columns:1fr auto;grid-template-areas:"day tot" "sess sess" "notes notes";border-bottom:1px solid var(--fo-line);padding:8px 6px}
  .fo-reg__days td,.fo-reg__days th{display:block;border:0!important;padding:2px 4px!important}
  .fo-reg__days .c-day{grid-area:day}
  .fo-reg__days .c-tot{grid-area:tot;align-self:center;font-size:16px}
  .fo-reg__days .c-sess{grid-area:sess}
  .fo-reg__days .c-notes{grid-area:notes}
  .fo-reg__days .c-notes:empty{display:none}
  .fo-reg__days tr.is-empty .c-sess{display:none}
  .fo-reg__day b{display:inline;min-width:0}
  .fo-reg__days tfoot tr{border-top:2px solid var(--fo-navy);border-bottom:0}
  .fo-reg__table.table-responsive,.fo-reg__res .table-responsive{border:0;overflow-x:visible}
}
/* //CTA FICHAJEONLINE REGISTRE */
@media(max-width:767px){.fo-reg__days tr.is-empty .c-tot,.fo-reg__days tr.is-empty .c-notes{display:none}.fo-reg__days tr.is-weekend{background:#f7f8fa}.fo-reg__days tr.is-weekend td{background:transparent!important}} /* //CTA [15/11/2026], FICHAJEONLINE REGISTRE, phone: empty days without blank boxes //CTA FICHAJEONLINE REGISTRE */
.fo-has-quick{height:auto!important;min-height:0!important}.fo-has-quick .fo-quick{margin:0 0 14px}.fo-has-quick .fo-pill{padding:6px 12px;font-size:13px}.fo-has-quick #daterange-btn{min-width:250px} /* //CTA [15/11/2026], FICHAJEONLINE REGISTRE, old report forms: room for the quick buttons //CTA FICHAJEONLINE REGISTRE */
