:root{

--fnss-green:#148A32;
--fnss-green-dark:#0E6B25;
--fnss-green-soft:#EAF7EE;

--fnss-orange:#F7941D;

--fnss-dark:#15202B;
--fnss-gray:#6B7280;

--fnss-bg:#F7F9F8;

--fnss-white:#FFFFFF;

--fnss-radius:25px;

--fnss-shadow:
0 15px 40px rgba(0,0,0,.08);

}


*{
box-sizing:border-box;
}


body{

margin:0;

font-family:
"Inter",
Arial,
sans-serif;

background:var(--fnss-bg);

color:var(--fnss-dark);

}


img{

max-width:100%;

}


.fnss-container{

max-width:1200px;

margin:auto;

padding:20px;

}



.fnss-button{

display:flex;

justify-content:center;

align-items:center;

padding:16px 25px;

border-radius:20px;

background:var(--fnss-green);

color:white;

font-weight:600;

text-decoration:none;

}



.fnss-header{

background:white;

display:flex;

justify-content:space-between;

align-items:center;

padding:15px 25px;

position:sticky;

top:0;

z-index:1000;

box-shadow:var(--fnss-shadow);

}



.fnss-logo{

height:60px;

}



.fnss-hero{

display:grid;

grid-template-columns:1fr 350px;

gap:40px;

padding:70px 20px;

align-items:center;

}



.fnss-hero h1{

font-size:48px;

line-height:1.1;

}



.fnss-kit-card{

background:white;

padding:40px;

border-radius:30px;

box-shadow:var(--fnss-shadow);

text-align:center;

}



@media(max-width:768px){

.fnss-hero{

grid-template-columns:1fr;

}


.fnss-hero h1{

font-size:32px;

}


}


/* PAGE SYSTEM */

.fnss-page{

min-height:70vh;

padding:40px 0;

}


.fnss-section{

padding:60px 0;

}


.fnss-grid{

display:grid;

grid-template-columns:repeat(auto-fit,minmax(260px,1fr));

gap:25px;

}


.fnss-flex{

display:flex;

align-items:center;

gap:20px;

}


.fnss-alert{

padding:18px;

border-radius:18px;

margin:20px 0;

}


.fnss-alert-success{

background:#EAF7EE;

color:#148A32;

}


.fnss-alert-error{

background:#FDECEC;

color:#C0392B;

}



/* APP HEADER */


.fnss-app-header{

height:80px;

background:white;

display:flex;

align-items:center;

justify-content:space-between;

padding:15px 30px;

box-shadow:0 8px 25px rgba(0,0,0,.06);

position:sticky;

top:0;

z-index:50;

}



.fnss-logo{

height:55px;

}



.fnss-nav{

display:flex;

gap:25px;

}



.fnss-nav a{

color:var(--fnss-dark);

font-weight:600;

}



.fnss-language a{

background:var(--fnss-green-soft);

padding:8px 14px;

border-radius:20px;

color:var(--fnss-green);

}



@media(max-width:768px){

.fnss-nav{

display:none;

}


.fnss-app-header{

padding:15px;

}

}



/* DASHBOARD */


.fnss-dashboard-header{

background:white;

border-radius:25px;

padding:25px;

display:flex;

justify-content:space-between;

align-items:center;

margin-bottom:25px;

box-shadow:var(--fnss-shadow);

}



.fnss-dashboard-header h1{

margin:0;

font-size:26px;

}



.fnss-user-pill{

background:var(--fnss-green-soft);

color:var(--fnss-green);

padding:12px 18px;

border-radius:30px;

font-weight:700;

}



.fnss-dashboard-grid{

display:grid;

grid-template-columns:

repeat(auto-fit,minmax(220px,1fr));

gap:20px;

}



.fnss-stat-card{

background:white;

padding:25px;

border-radius:25px;

display:flex;

gap:20px;

align-items:center;

box-shadow:var(--fnss-shadow);

}



.fnss-stat-icon{

font-size:35px;

}



.fnss-stat-card p{

margin:0;

color:var(--fnss-gray);

}



.fnss-stat-card strong{

font-size:32px;

}



.fnss-dashboard-actions{

margin-top:30px;

display:grid;

gap:15px;

}



.fnss-action-primary,
.fnss-action-danger{

padding:20px;

border-radius:22px;

text-align:center;

font-size:18px;

font-weight:700;

}



.fnss-action-primary{

background:var(--fnss-green);

color:white;

}



.fnss-action-danger{

background:#FDECEC;

color:#C0392B;

}




/* MODERN ICON SYSTEM */

.fnss-icon{

width:22px;

height:22px;

display:inline-flex;

align-items:center;

justify-content:center;

}


.fnss-icon svg{

width:100%;

height:100%;

stroke:currentColor;

fill:none;

stroke-width:2;

stroke-linecap:round;

stroke-linejoin:round;

}



.fnss-menu-item{

display:flex;

align-items:center;

gap:14px;

padding:14px 16px;

border-radius:16px;

color:var(--fnss-gray);

font-weight:600;

transition:.25s;

}


.fnss-menu-item:hover,
.fnss-menu-item.active{

background:var(--fnss-green-soft);

color:var(--fnss-green);

}




/* APP SHELL */


.fnss-topbar{

height:80px;

background:white;

display:flex;

align-items:center;

justify-content:space-between;

padding:0 30px;

box-shadow:var(--fnss-shadow);

}


.fnss-topbar-logo{

height:48px;

}


.fnss-topbar-right{

display:flex;

align-items:center;

gap:25px;

}


.fnss-user{

display:flex;

align-items:center;

gap:10px;

background:var(--fnss-green-soft);

padding:10px 18px;

border-radius:30px;

color:var(--fnss-green);

font-weight:700;

}



.fnss-sidebar{

width:260px;

background:white;

min-height:calc(100vh - 80px);

padding:25px;

position:fixed;

left:0;

top:80px;

box-shadow:var(--fnss-shadow);

}


.fnss-sidebar-title{

font-size:24px;

font-weight:800;

margin-bottom:30px;

color:var(--fnss-green);

}


.fnss-sidebar-title span{

display:block;

font-size:13px;

color:var(--fnss-gray);

margin-top:5px;

}


.fnss-main-layout{

margin-left:260px;

padding:30px;

}



.fnss-bottom-nav{

display:none;

}



@media(max-width:768px){


.fnss-sidebar{

display:none;

}


.fnss-main-layout{

margin-left:0;

padding-bottom:90px;

}


.fnss-bottom-nav{

display:flex;

position:fixed;

bottom:0;

left:0;

right:0;

height:75px;

background:white;

justify-content:space-around;

align-items:center;

box-shadow:0 -5px 20px rgba(0,0,0,.08);

z-index:100;

}


.fnss-bottom-nav a{

display:flex;

flex-direction:column;

align-items:center;

gap:5px;

font-size:12px;

color:var(--fnss-gray);

}


}



/* DASHBOARD APP LAYOUT */


.fnss-app{

min-height:100vh;

background:var(--fnss-bg);

}



.fnss-body-layout{

display:flex;

}



.fnss-main-layout{

flex:1;

margin-left:260px;

padding:35px;

min-height:calc(100vh - 80px);

}



@media(max-width:768px){


.fnss-main-layout{

margin-left:0;

padding:20px;

}


}





/* MODERN DASHBOARD */


.fnss-dashboard-grid{

display:grid;

grid-template-columns:
repeat(auto-fit,minmax(260px,1fr));

gap:25px;

margin-top:25px;

}



.fnss-modern-stat{

background:white;

border-radius:28px;

padding:25px;

display:flex;

align-items:center;

gap:20px;

box-shadow:var(--fnss-shadow);

}



.fnss-modern-stat-icon{

width:60px;

height:60px;

border-radius:20px;

display:flex;

align-items:center;

justify-content:center;

background:var(--fnss-green-soft);

color:var(--fnss-green);

}



.fnss-modern-stat-content p{

margin:0;

color:var(--fnss-gray);

font-weight:600;

}



.fnss-modern-stat-content h2{

margin:8px 0 0;

font-size:32px;

}



.fnss-dashboard-actions{

display:grid;

grid-template-columns:repeat(auto-fit,minmax(240px,1fr));

gap:20px;

margin-top:35px;

}



.fnss-primary-action,
.fnss-secondary-action{

padding:20px;

border-radius:22px;

display:flex;

align-items:center;

justify-content:center;

gap:12px;

font-weight:700;

font-size:16px;

}



.fnss-primary-action{

background:var(--fnss-green);

color:white;

}



.fnss-secondary-action{

background:white;

color:var(--fnss-green);

border:2px solid var(--fnss-green-soft);

}





/* DASHBOARD WELCOME */


.fnss-welcome-card{

background:linear-gradient(
135deg,
#148A32,
#0E6B25
);

color:white;

border-radius:30px;

padding:35px;

display:flex;

justify-content:space-between;

align-items:center;

box-shadow:var(--fnss-shadow);

}



.fnss-welcome-card h1{

margin:0 0 10px;

font-size:32px;

}



.fnss-center-badge{

background:rgba(255,255,255,.15);

padding:15px 25px;

border-radius:30px;

font-weight:700;

}



.fnss-dashboard-info{

background:white;

border-radius:30px;

padding:30px;

margin-top:35px;

box-shadow:var(--fnss-shadow);

}



.fnss-empty-state{

height:180px;

display:flex;

flex-direction:column;

align-items:center;

justify-content:center;

color:var(--fnss-gray);

gap:15px;

}



@media(max-width:768px){

.fnss-welcome-card{

flex-direction:column;

align-items:flex-start;

gap:20px;

}


.fnss-welcome-card h1{

font-size:24px;

}


}



/* SIDEBAR BRAND */


.fnss-sidebar-brand{

text-align:center;

margin-bottom:35px;

}


.fnss-sidebar-brand img{

height:75px;

margin:auto;

border-radius:15px;

}


.fnss-sidebar-brand p{

font-size:13px;

color:var(--fnss-gray);

margin-top:12px;

}



.fnss-sidebar{

border-right:1px solid #eeeeee;

}



.fnss-menu-item{

margin-bottom:8px;

}



.fnss-menu-item .fnss-icon{

width:24px;

height:24px;

}





/* SCANNER PAGE */


.fnss-scanner-box{

background:white;

border-radius:35px;

padding:45px 30px;

text-align:center;

box-shadow:var(--fnss-shadow);

max-width:600px;

margin:auto;

}



.fnss-scanner-icon{

width:90px;

height:90px;

border-radius:30px;

background:var(--fnss-green-soft);

color:var(--fnss-green);

display:flex;

align-items:center;

justify-content:center;

margin:0 auto 25px;

}



.fnss-scanner-icon svg{

width:45px;

height:45px;

}



.fnss-scanner-box h2{

font-size:30px;

margin-bottom:10px;

}



.fnss-scanner-box p{

color:var(--fnss-gray);

margin-bottom:30px;

}



.fnss-manual-box{

background:white;

border-radius:30px;

padding:30px;

margin-top:30px;

box-shadow:var(--fnss-shadow);

}



.fnss-manual-input{

display:flex;

gap:10px;

}



.fnss-manual-input input{

flex:1;

padding:16px;

border-radius:15px;

border:1px solid #ddd;

}



.fnss-manual-input button{

padding:16px 25px;

border:none;

border-radius:15px;

background:var(--fnss-orange);

color:white;

font-weight:700;

}



@media(max-width:768px){

.fnss-manual-input{

flex-direction:column;

}

}




/* ICON SYSTEM */

.fnss-icon{

display:inline-flex;

align-items:center;

justify-content:center;

}


.fnss-icon svg{

width:24px;

height:24px;

stroke-width:2;

}


.fnss-sidebar .fnss-icon svg{

width:22px;

height:22px;

}


.fnss-action-primary .fnss-icon svg{

width:26px;

height:26px;

}



/* SIDEBAR NAVIGATION */


.fnss-sidebar{

position:fixed;

left:0;

top:80px;

bottom:0;

width:260px;

background:white;

padding:25px 15px;

box-shadow:var(--fnss-shadow);

z-index:50;

}


.fnss-sidebar-logo img{

height:55px;

margin:auto;

margin-bottom:30px;

}


.fnss-menu-item{

display:flex;

align-items:center;

gap:15px;

padding:14px 18px;

border-radius:16px;

color:var(--fnss-dark);

font-weight:600;

margin-bottom:8px;

transition:.3s;

}


.fnss-menu-item:hover{

background:var(--fnss-green-soft);

color:var(--fnss-green);

}


.fnss-menu-item .fnss-icon{

color:inherit;

}


@media(max-width:768px){

.fnss-sidebar{

display:none;

}

}




/* MOBILE BOTTOM NAV */


.fnss-bottom-nav{

display:none;

}



@media(max-width:768px){


.fnss-bottom-nav{

display:flex;

position:fixed;

bottom:0;

left:0;

right:0;

height:75px;

background:white;

box-shadow:0 -5px 25px rgba(0,0,0,.08);

justify-content:space-around;

align-items:center;

z-index:200;

}


.fnss-bottom-nav a{

display:flex;

flex-direction:column;

align-items:center;

gap:5px;

font-size:12px;

color:var(--fnss-gray);

font-weight:600;

}


.fnss-bottom-nav svg{

width:22px;

height:22px;

}


.fnss-main-layout{

padding-bottom:100px;

}


}



/* PREMIUM DASHBOARD */


.fnss-dashboard-hero{

background:linear-gradient(
135deg,
#148A32,
#0E6B25
);

color:white;

border-radius:30px;

padding:35px;

display:flex;

justify-content:space-between;

align-items:center;

margin-bottom:30px;

}



.fnss-badge{

background:rgba(255,255,255,.2);

padding:8px 15px;

border-radius:30px;

font-size:13px;

}



.fnss-status-card{

background:white;

color:#148A32;

padding:15px 22px;

border-radius:30px;

font-weight:700;

display:flex;

gap:10px;

align-items:center;

}



.fnss-status-dot{

width:10px;

height:10px;

background:#22c55e;

border-radius:50%;

}



.fnss-stats-grid{

display:grid;

grid-template-columns:repeat(3,1fr);

gap:20px;

margin-bottom:35px;

}



.fnss-stat-modern{

background:white;

padding:25px;

border-radius:25px;

box-shadow:var(--fnss-shadow);

display:flex;

gap:20px;

align-items:center;

}



.fnss-stat-modern svg{

width:35px;

height:35px;

color:var(--fnss-green);

}



.fnss-stat-modern span{

display:block;

color:var(--fnss-gray);

}



.fnss-stat-modern strong{

font-size:30px;

}



.fnss-actions-grid{

display:grid;

grid-template-columns:repeat(3,1fr);

gap:20px;

}



.fnss-action-card{

background:white;

padding:25px;

border-radius:25px;

display:flex;

align-items:center;

gap:15px;

font-weight:700;

color:var(--fnss-dark);

box-shadow:var(--fnss-shadow);

}



.fnss-action-card svg{

color:var(--fnss-green);

}



.fnss-activity-card{

background:white;

padding:25px;

border-radius:25px;

}



.fnss-activity-card div{

padding:15px 0;

border-bottom:1px solid #eee;

}



.fnss-activity-dot{

display:inline-block;

width:10px;

height:10px;

background:#148A32;

border-radius:50%;

margin-right:10px;

}



@media(max-width:768px){

.fnss-dashboard-hero{

flex-direction:column;

align-items:flex-start;

gap:20px;

}


.fnss-stats-grid,

.fnss-actions-grid{

grid-template-columns:1fr;

}


}




/* PREMIUM TOPBAR */


.fnss-topbar{

height:80px;

background:white;

display:flex;

align-items:center;

justify-content:space-between;

padding:0 35px;

position:sticky;

top:0;

z-index:100;

box-shadow:0 5px 25px rgba(0,0,0,.06);

}



.fnss-topbar-left{

display:flex;

align-items:center;

gap:20px;

}



.fnss-topbar-logo{

height:50px;

width:auto;

}



.fnss-centre-name{

font-weight:700;

font-size:18px;

}



.fnss-topbar-right{

display:flex;

align-items:center;

gap:20px;

}



.fnss-notification{

border:none;

background:#f5f7f6;

width:45px;

height:45px;

border-radius:50%;

display:flex;

align-items:center;

justify-content:center;

cursor:pointer;

}



.fnss-notification svg{

width:22px;

}



.fnss-profile-dropdown{

display:flex;

align-items:center;

gap:12px;

background:#f7f9f8;

padding:8px 15px 8px 8px;

border-radius:40px;

}



.fnss-profile-avatar{

width:42px;

height:42px;

background:var(--fnss-green);

color:white;

border-radius:50%;

display:flex;

align-items:center;

justify-content:center;

font-weight:800;

}



.fnss-profile-info{

display:flex;

flex-direction:column;

}



.fnss-profile-info span{

font-size:12px;

color:var(--fnss-gray);

}



.fnss-profile-logout{

display:flex;

align-items:center;

gap:5px;

font-size:13px;

color:#c0392b;

font-weight:700;

}



@media(max-width:768px){


.fnss-centre-name{

display:none;

}


.fnss-profile-info{

display:none;

}


.fnss-topbar{

padding:0 15px;

}


}




/* NOTIFICATIONS */


.fnss-notification-wrapper{

position:relative;

}


.fnss-notification{

position:relative;

}


.fnss-notification-badge{

position:absolute;

top:-4px;

right:-4px;

background:#F7941D;

color:white;

font-size:11px;

width:18px;

height:18px;

border-radius:50%;

display:flex;

align-items:center;

justify-content:center;

}



.fnss-notification-panel{

display:none;

position:absolute;

right:0;

top:55px;

width:280px;

background:white;

border-radius:20px;

box-shadow:var(--fnss-shadow);

padding:20px;

}


.fnss-notification-panel.active{

display:block;

}



.fnss-notification-item{

padding:12px 0;

border-bottom:1px solid #eee;

}



.fnss-language a{

background:var(--fnss-green-soft);

color:var(--fnss-green);

padding:8px 15px;

border-radius:20px;

font-weight:700;

font-size:13px;

}




/* =========================
   FNSS ICON SYSTEM FIX
========================= */


.fnss-icon{

display:inline-flex;

align-items:center;

justify-content:center;

width:24px;

height:24px;

flex-shrink:0;

}



.fnss-icon svg{

width:24px !important;

height:24px !important;

max-width:24px !important;

max-height:24px !important;

display:block;

fill:none !important;

stroke:currentColor;

stroke-width:2;

stroke-linecap:round;

stroke-linejoin:round;

}



.fnss-sidebar .fnss-icon svg,
.fnss-bottom-nav .fnss-icon svg,
.fnss-action-card .fnss-icon svg,
.fnss-stat-modern .fnss-icon svg,
.fnss-notification .fnss-icon svg{

width:24px !important;

height:24px !important;

}



.fnss-stat-modern .fnss-icon,
.fnss-action-card .fnss-icon{

width:48px;

height:48px;

border-radius:16px;

background:var(--fnss-green-soft);

color:var(--fnss-green);

}





/* FNSS APP RESET */

html,
body{
    margin:0;
    padding:0;
    background:#F7F9F8;
}


body{
    overflow-x:hidden;
}


.fnss-app{
    min-height:100vh;
}


.fnss-main-layout{
    padding:30px;
}


.fnss-container{
    max-width:1400px;
    margin:auto;
}


.fnss-dashboard-hero{
    margin-bottom:25px;
}


.fnss-stat-modern,
.fnss-action-card,
.fnss-activity-card{
    transition:.25s ease;
}


.fnss-stat-modern:hover,
.fnss-action-card:hover{
    transform:translateY(-4px);
}




/* DASHBOARD PREMIUM UI */


.fnss-welcome-card{

background:white;

border-radius:30px;

padding:35px;

display:flex;

justify-content:space-between;

align-items:center;

box-shadow:var(--fnss-shadow);

margin-bottom:30px;

}


.fnss-welcome-card h1{

font-size:32px;

margin:15px 0 8px;

}



.fnss-online-status{

background:#EAF7EE;

color:#148A32;

padding:12px 20px;

border-radius:30px;

font-weight:700;

}


.fnss-online-status span{

display:inline-block;

width:10px;

height:10px;

background:#148A32;

border-radius:50%;

margin-right:8px;

}



.fnss-stat-modern{

background:white;

padding:25px;

border-radius:25px;

display:flex;

gap:18px;

align-items:center;

box-shadow:var(--fnss-shadow);

}



.fnss-stat-icon{

width:55px;

height:55px;

border-radius:18px;

display:flex;

align-items:center;

justify-content:center;

}


.fnss-stat-icon.green{

background:#EAF7EE;
color:#148A32;

}


.fnss-stat-icon.blue{

background:#EAF3FF;
color:#2563EB;

}


.fnss-stat-icon.orange{

background:#FFF3E8;
color:#F97316;

}


.fnss-stat-icon.purple{

background:#F3E8FF;
color:#9333EA;

}


.fnss-stat-modern strong{

display:block;

font-size:30px;

margin-top:5px;

}


.fnss-action-card{

background:white;

padding:25px;

border-radius:25px;

display:flex;

align-items:center;

gap:18px;

box-shadow:var(--fnss-shadow);

}


.fnss-action-card strong{

display:block;

font-size:17px;

}


.fnss-action-card span{

color:#6B7280;

font-size:14px;

}




/* ==========================
   FNSS DASHBOARD GRID SYSTEM
========================== */


.fnss-stats-grid{

display:grid;

grid-template-columns:repeat(4,1fr);

gap:24px;

margin-bottom:35px;

}



.fnss-actions-grid{

display:grid;

grid-template-columns:repeat(3,1fr);

gap:24px;

}



.fnss-dashboard-section{

margin-top:35px;

}



.fnss-dashboard-section h2{

font-size:22px;

margin-bottom:20px;

}



.fnss-stat-modern{

min-height:130px;

}



.fnss-stat-modern span{

display:block;

color:#6B7280;

font-size:14px;

margin-bottom:8px;

}



.fnss-action-card{

min-height:110px;

text-decoration:none;

color:inherit;

}



.fnss-action-card .fnss-icon{

width:50px;

height:50px;

border-radius:16px;

background:#EAF7EE;

color:#148A32;

display:flex;

align-items:center;

justify-content:center;

}



@media(max-width:1100px){


.fnss-stats-grid{

grid-template-columns:repeat(2,1fr);

}


.fnss-actions-grid{

grid-template-columns:repeat(2,1fr);

}


}



@media(max-width:700px){


.fnss-stats-grid,
.fnss-actions-grid{

grid-template-columns:1fr;

}


.fnss-welcome-card{

flex-direction:column;

align-items:flex-start;

gap:20px;

}


.fnss-welcome-card h1{

font-size:24px;

}


}





/* REMOVE WORDPRESS BAR */

body.admin-bar .fnss-app{
    margin-top:-32px;
}


#wpadminbar{
    display:none !important;
}


html{
    margin-top:0 !important;
}




/* FINAL ICON RESET */


.fnss-icon{

display:inline-flex !important;

width:32px !important;

height:32px !important;

align-items:center;

justify-content:center;

}


.fnss-icon svg{

width:28px !important;

height:28px !important;

stroke:currentColor !important;

fill:none !important;

stroke-width:2 !important;

}


.fnss-sidebar .fnss-icon{

width:42px !important;

height:42px !important;

background:#F1F8F3;

border-radius:14px;

}


.fnss-action-card .fnss-icon{

width:55px !important;

height:55px !important;

background:#EAF7EE;

border-radius:18px;

}




.fnss-welcome-card{

background:linear-gradient(
135deg,
#148A32,
#0E6B25
);

color:white;

border-radius:32px;

padding:40px;

display:flex;

justify-content:space-between;

align-items:center;

min-height:220px;

}


.fnss-welcome-card h1{

color:white;

font-size:34px;

margin:20px 0 10px;

}


.fnss-welcome-card p{

color:rgba(255,255,255,.8);

}


.fnss-badge{

background:white;

color:#148A32;

padding:8px 16px;

border-radius:30px;

font-weight:700;

}


.fnss-online-status{

background:white;

color:#148A32;

}




.fnss-main-layout{

margin-left:240px;

padding:35px;

}


.fnss-container{

width:100%;

max-width:1280px;

margin:0 auto;

}




/* ==========================
   FNSS SIDEBAR REDESIGN
========================== */


.fnss-sidebar{

position:fixed;

left:0;

top:0;

bottom:0;

width:240px;

background:white;

border-right:1px solid #EEF1EF;

padding:25px 18px;

z-index:50;

}



.fnss-sidebar-brand{

text-align:center;

padding-bottom:30px;

border-bottom:1px solid #F0F2F1;

margin-bottom:25px;

}



.fnss-sidebar-brand img{

width:95px;

height:auto;

}



.fnss-sidebar-brand p{

font-size:13px;

color:#6B7280;

margin-top:12px;

}



.fnss-sidebar nav{

display:flex;

flex-direction:column;

gap:8px;

}



.fnss-menu-item{

height:52px;

display:flex;

align-items:center;

gap:14px;

padding:0 15px;

border-radius:16px;

text-decoration:none;

color:#475569;

font-weight:600;

transition:.2s;

}



.fnss-menu-item:hover{

background:#F3F8F4;

color:#148A32;

}



.fnss-menu-item.active{

background:#EAF7EE;

color:#148A32;

}



.fnss-menu-item .fnss-icon{

background:transparent;

width:32px !important;

height:32px !important;

}



.fnss-menu-item .fnss-icon svg{

width:22px !important;

height:22px !important;

}





/* TOPBAR */


.fnss-topbar{

height:80px;

background:white;

border-bottom:1px solid #EEF1EF;

display:flex;

align-items:center;

justify-content:space-between;

padding:0 35px;

margin-left:240px;

}



.fnss-topbar-centre h3{

margin:0;

font-size:20px;

}



.fnss-topbar-centre p{

margin:4px 0 0;

font-size:13px;

color:#6B7280;

}



.fnss-topbar-right{

display:flex;

align-items:center;

gap:20px;

}





/* ==========================
   FINAL SVG ICON CONTROL
========================== */


.fnss-icon{

display:inline-flex !important;

align-items:center;

justify-content:center;

overflow:hidden;

}



.fnss-icon svg{

display:block !important;

width:24px !important;

height:24px !important;

max-width:24px !important;

max-height:24px !important;

stroke:currentColor !important;

fill:none !important;

stroke-width:2 !important;

stroke-linecap:round !important;

stroke-linejoin:round !important;

}



.fnss-sidebar .fnss-icon{

background:#EAF7EE;

border-radius:12px;

width:38px !important;

height:38px !important;

}



.fnss-sidebar .fnss-icon svg{

width:20px !important;

height:20px !important;

}



.fnss-action-card .fnss-icon{

background:#EAF7EE;

border-radius:16px;

width:52px !important;

height:52px !important;

}



.fnss-action-card .fnss-icon svg{

width:26px !important;

height:26px !important;

}





/* =========================
   FINAL ICON SIZE CONTROL
========================= */


.fnss-icon{

display:inline-flex !important;

width:24px !important;

height:24px !important;

align-items:center;

justify-content:center;

flex-shrink:0;

}


.fnss-icon svg{

width:20px !important;

height:20px !important;

max-width:20px !important;

max-height:20px !important;

stroke-width:2 !important;

}


.fnss-sidebar .fnss-icon{

width:36px !important;

height:36px !important;

background:#F1F8F3;

border-radius:12px;

}


.fnss-sidebar .fnss-icon svg{

width:20px !important;

height:20px !important;

}


.fnss-action-card .fnss-icon{

width:42px !important;

height:42px !important;

border-radius:14px;

}


.fnss-action-card .fnss-icon svg{

width:22px !important;

height:22px !important;

}


.fnss-stat-icon .fnss-icon svg{

width:20px !important;

height:20px !important;

}




/* ==========================
   FNSS HERO UPGRADE
========================== */


.fnss-welcome-card{

position:relative;

overflow:hidden;

min-height:240px;

padding:45px;

background:
linear-gradient(
135deg,
#138A32,
#0B6B27
);

}



.fnss-welcome-card:after{

content:"";

position:absolute;

right:-80px;

bottom:-80px;

width:260px;

height:260px;

background:rgba(255,255,255,.08);

border-radius:50%;

}



.fnss-welcome-card:before{

content:"";

position:absolute;

right:120px;

top:-80px;

width:180px;

height:180px;

background:rgba(255,255,255,.05);

border-radius:50%;

}



.fnss-welcome-card > div:first-child{

position:relative;

z-index:2;

}



.fnss-online-status{

position:relative;

z-index:2;

}



.fnss-welcome-card h1{

max-width:500px;

line-height:1.15;

}





.fnss-welcome-card:after{

box-shadow:
0 0 80px rgba(255,255,255,.15);

}




/* ==========================
   FNSS REGISTRATION PAGE
========================== */


.fnss-register-page{

max-width:900px;

margin:40px auto;

}



.fnss-register-card{

background:white;

border-radius:32px;

padding:45px;

box-shadow:var(--fnss-shadow);

}



.fnss-register-header{

margin-bottom:35px;

}



.fnss-register-header h1{

font-size:34px;

margin:20px 0 10px;

}



.fnss-register-header p{

color:#6B7280;

font-size:16px;

}



.fnss-register-progress{

display:flex;

align-items:center;

gap:15px;

margin-bottom:35px;

}



.fnss-register-progress div{

width:38px;

height:38px;

border-radius:50%;

background:#E5E7EB;

display:flex;

align-items:center;

justify-content:center;

font-weight:700;

}



.fnss-register-progress .active{

background:#148A32;

color:white;

}



.fnss-register-progress span{

margin-left:10px;

color:#6B7280;

}



.fnss-form-grid{

display:grid;

grid-template-columns:repeat(2,1fr);

gap:20px;

}



.fnss-register-form input{

height:52px;

border:1px solid #E5E7EB;

border-radius:14px;

padding:0 18px;

font-size:15px;

width:100%;

}



.fnss-register-form input:focus{

outline:none;

border-color:#148A32;

}



.fnss-primary-button{

margin-top:30px;

width:100%;

height:55px;

border:none;

border-radius:16px;

background:#148A32;

color:white;

font-size:16px;

font-weight:700;

cursor:pointer;

}



@media(max-width:700px){

.fnss-form-grid{

grid-template-columns:1fr;

}


.fnss-register-card{

padding:25px;

}

}




/* ==========================
   FNSS REGISTER MOBILE FIX
========================== */


/* hide dashboard navigation on public pages */

body:has(.fnss-register-page) .fnss-topbar,
body:has(.fnss-register-page) .fnss-sidebar,
body:has(.fnss-register-page) .fnss-bottom-nav{

display:none !important;

}



body:has(.fnss-register-page) .fnss-main-layout{

margin:0 !important;

padding:0 !important;

}



body:has(.fnss-register-page) .fnss-container{

max-width:none !important;

padding:0 !important;

}



/* register container */

.fnss-register-page{

width:100%;

max-width:720px;

margin:40px auto;

padding:20px;

}



.fnss-register-card{

width:100%;

box-sizing:border-box;

}



.fnss-register-form input{

width:100%;

height:52px;

box-sizing:border-box;

font-size:15px;

margin-bottom:16px;

}



@media(max-width:768px){


.fnss-register-page{

margin:0;

padding:20px 16px;

}



.fnss-register-card{

padding:28px 22px;

border-radius:24px;

}



.fnss-register-header h1{

font-size:28px;

line-height:1.15;

}



.fnss-register-header p{

font-size:14px;

}



.fnss-register-progress{

margin-bottom:25px;

}



.fnss-primary-button{

width:100%;

height:52px;

}



}





/* ==========================
   FNSS REGISTER MOBILE FIX
========================== */


/* hide dashboard navigation on public pages */

body:has(.fnss-register-page) .fnss-topbar,
body:has(.fnss-register-page) .fnss-sidebar,
body:has(.fnss-register-page) .fnss-bottom-nav{

display:none !important;

}



body:has(.fnss-register-page) .fnss-main-layout{

margin:0 !important;

padding:0 !important;

}



body:has(.fnss-register-page) .fnss-container{

max-width:none !important;

padding:0 !important;

}



/* register container */

.fnss-register-page{

width:100%;

max-width:720px;

margin:40px auto;

padding:20px;

}



.fnss-register-card{

width:100%;

box-sizing:border-box;

}



.fnss-register-form input{

width:100%;

height:52px;

box-sizing:border-box;

font-size:15px;

margin-bottom:16px;

}



@media(max-width:768px){


.fnss-register-page{

margin:0;

padding:20px 16px;

}



.fnss-register-card{

padding:28px 22px;

border-radius:24px;

}



.fnss-register-header h1{

font-size:28px;

line-height:1.15;

}



.fnss-register-header p{

font-size:14px;

}



.fnss-register-progress{

margin-bottom:25px;

}



.fnss-primary-button{

width:100%;

height:52px;

}



}





/* ==========================
   PUBLIC REGISTER MOBILE POLISH
========================== */


.fnss-public-header{

height:120px;

padding:20px;

}


.fnss-public-header img{

width:120px;

height:auto;

}



@media(max-width:768px){


.fnss-public-header{

height:110px;

}


.fnss-public-header img{

width:110px;

}



.fnss-form-grid{

grid-template-columns:1fr !important;

}



.fnss-register-card{

padding:24px 18px;

}



.fnss-register-header h1{

font-size:26px;

}



.fnss-register-page{

padding:15px;

}


}





/* ==========================
   FNSS KITS PAGE
========================== */


.fnss-kits-page{

max-width:1100px;

margin:40px auto;

padding:20px;

}


.fnss-kits-card{

background:white;

border-radius:32px;

padding:40px;

box-shadow:var(--fnss-shadow);

}



.fnss-kits-header{

margin-bottom:35px;

}



.fnss-kits-header h1{

font-size:34px;

margin:20px 0 10px;

}



.fnss-kits-header p{

color:#6B7280;

}



.fnss-kits-grid{

display:grid;

grid-template-columns:repeat(2,1fr);

gap:25px;

}



.fnss-kit-card{

border:1px solid #EEF1EF;

border-radius:24px;

overflow:hidden;

background:white;

}



.fnss-kit-card img{

width:100%;

height:220px;

object-fit:cover;

}



.fnss-kit-content{

padding:25px;

}



.fnss-kit-content h2{

font-size:22px;

margin-bottom:10px;

}



.fnss-kit-content p{

color:#6B7280;

min-height:50px;

}



.fnss-kit-price{

font-size:24px;

font-weight:800;

color:#148A32;

margin:20px 0;

}



@media(max-width:768px){

.fnss-kits-page{

padding:15px;

}


.fnss-kits-card{

padding:22px;

}


.fnss-kits-grid{

grid-template-columns:1fr;

}


.fnss-kits-header h1{

font-size:26px;

}

}




/* ==========================
   KITS PREMIUM CARDS
========================== */


.fnss-kit-card{

background:white;

border-radius:28px;

overflow:hidden;

border:1px solid #EEF1EF;

transition:.25s ease;

}



.fnss-kit-card:hover{

transform:translateY(-5px);

box-shadow:0 20px 40px rgba(0,0,0,.08);

}



.fnss-kit-image{

height:240px;

position:relative;

background:#F5F7F6;

}



.fnss-kit-image img{

width:100%;

height:100%;

object-fit:cover;

}



.fnss-kit-placeholder{

height:100%;

display:flex;

align-items:center;

justify-content:center;

font-size:60px;

}



.fnss-kit-status{

position:absolute;

top:18px;

right:18px;

background:#EAF7EE;

color:#148A32;

padding:7px 14px;

border-radius:30px;

font-size:13px;

font-weight:700;

}



.fnss-kit-content{

padding:25px;

}



.fnss-kit-content h2{

font-size:22px;

margin:0 0 12px;

}



.fnss-kit-content p{

color:#6B7280;

line-height:1.6;

min-height:50px;

}



.fnss-kit-footer{

display:flex;

align-items:center;

justify-content:space-between;

margin-top:25px;

}



.fnss-kit-price{

font-size:24px;

font-weight:800;

color:#148A32;

}



.fnss-kit-price span{

font-size:14px;

}



@media(max-width:768px){

.fnss-kit-image{

height:200px;

}


.fnss-kit-footer{

flex-direction:column;

align-items:stretch;

gap:20px;

}


.fnss-primary-button{

text-align:center;

}

}


