:root{
  --vink-yellow:#ffca05;
  --vink-yellow-dark:#e7ad00;
  --vink-navy:#071d33;
  --vink-navy-2:#0d2a46;
  --vink-blue:#165d9c;
  --vink-bg:#f3f6f9;
  --vink-card:#ffffff;
  --vink-text:#172536;
  --vink-muted:#647386;
  --vink-border:#dfe6ed;
  --vink-success:#168a55;
  --vink-warning:#d88600;
  --vink-danger:#d54343;
  --vink-shadow:0 10px 30px rgba(12,35,57,.09);
  --sidebar-width:232px;
}
*{box-sizing:border-box}
html{background:var(--vink-bg)}
body.vink-corporate-app{margin:0!important;min-height:100vh;background:var(--vink-bg)!important;color:var(--vink-text);font-family:Inter,Segoe UI,Arial,sans-serif!important;padding-left:var(--sidebar-width)}
body.vink-corporate-app::before{content:"";position:fixed;inset:0;pointer-events:none;background:linear-gradient(135deg,rgba(255,202,5,.035),transparent 30%),radial-gradient(circle at 92% 8%,rgba(22,93,156,.06),transparent 25%);z-index:-1}
.vink-corporate-sidebar{position:fixed;inset:0 auto 0 0;width:var(--sidebar-width);background:linear-gradient(180deg,var(--vink-navy),#061523);z-index:10000;color:#fff;display:flex;flex-direction:column;box-shadow:8px 0 30px rgba(5,24,42,.14)}
.vink-sidebar-brand{height:78px;display:flex;align-items:center;padding:15px 20px;border-bottom:1px solid rgba(255,255,255,.1);background:#fff}
.vink-sidebar-brand img{width:104px;max-height:48px;object-fit:contain}
.vink-sidebar-caption{padding:15px 20px 8px;font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:#8fa6ba;font-weight:800}
.vink-corporate-nav{padding:0 10px;overflow:auto;scrollbar-width:thin}
.vink-corporate-nav a{display:flex;align-items:center;gap:11px;padding:10px 12px;margin:3px 0;border-radius:9px;color:#dbe6ef;text-decoration:none!important;font-size:13px;font-weight:650;transition:.18s ease;white-space:nowrap}
.vink-corporate-nav a:hover{background:rgba(255,255,255,.09);color:#fff;transform:translateX(2px)}
.vink-corporate-nav a.active{background:var(--vink-yellow);color:#111c28;box-shadow:0 5px 16px rgba(255,202,5,.22)}
.vink-corporate-nav .nav-icon{width:21px;text-align:center;font-size:16px}
.vink-sidebar-footer{margin-top:auto;padding:16px 20px 20px;border-top:1px solid rgba(255,255,255,.09)}
.vink-sidebar-footer img{width:86px;filter:brightness(0) invert(1);opacity:.96}
.vink-sidebar-footer small{display:block;color:#89a0b4;margin-top:6px;font-size:10px}
body.vink-corporate-app>.app-header,body.vink-corporate-app>.vink-header{position:sticky!important;top:0!important;z-index:9000!important;height:64px!important;min-height:64px!important;margin:0!important;padding:0 30px!important;background:linear-gradient(90deg,var(--vink-yellow),#ffd74f)!important;border:0!important;box-shadow:0 4px 18px rgba(38,49,60,.12)!important;display:flex!important;align-items:center!important;justify-content:space-between!important}
body.vink-corporate-app>.app-header .logo,body.vink-corporate-app>.app-header .logo-right,body.vink-corporate-app>.vink-header .logo,body.vink-corporate-app>.vink-header .logo-right{display:none!important}
body.vink-corporate-app>.app-header h1,body.vink-corporate-app>.vink-header h1{font-size:17px!important;line-height:1!important;margin:0!important;color:#12202e!important;font-weight:800!important;letter-spacing:-.01em!important;text-shadow:none!important;text-transform:none!important}
.vink-top-actions{display:flex;align-items:center;gap:8px;margin-left:auto}
.vink-top-action{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;border:1px solid rgba(8,29,51,.14);background:rgba(255,255,255,.45);font-size:15px;color:var(--vink-navy);font-weight:800}
.vink-page-banner{padding:26px 30px 14px;display:flex;justify-content:space-between;align-items:flex-end;gap:20px}
.vink-page-banner h2{margin:0 0 5px;font-size:25px;color:var(--vink-navy);letter-spacing:-.025em}
.vink-page-banner p{margin:0;color:var(--vink-muted);font-size:13px}
.vink-page-date{font-size:12px;color:var(--vink-muted);font-weight:650}
body.vink-corporate-app>.home-return-btn{display:none!important}
body.vink-corporate-app main{max-width:none!important}
body.vink-corporate-app .modern-container,body.vink-corporate-app .events-shell,body.vink-corporate-app .purchases-shell,body.vink-corporate-app .transport-shell,body.vink-corporate-app .users-shell{width:auto!important;max-width:none!important;margin:0!important;padding:14px 30px 36px!important}
body.vink-corporate-app .home-grid{width:auto!important;max-width:none!important;margin:0!important;padding:14px 30px 36px!important}
body.vink-corporate-app .card,body.vink-corporate-app .panel,body.vink-corporate-app .event-panel,body.vink-corporate-app .users-panel,body.vink-corporate-app .vink-card,body.vink-corporate-app article{border:1px solid var(--vink-border)!important;border-radius:12px!important;background:var(--vink-card)!important;box-shadow:var(--vink-shadow)!important}
body.vink-corporate-app .card,body.vink-corporate-app .panel,body.vink-corporate-app .event-panel,body.vink-corporate-app .users-panel{overflow:visible}
body.vink-corporate-app .panel-head,body.vink-corporate-app .card-header-row,body.vink-corporate-app .page-header-row{border-bottom-color:var(--vink-border)!important}
body.vink-corporate-app h2,body.vink-corporate-app h3,body.vink-corporate-app h4{color:var(--vink-navy)}
body.vink-corporate-app .eyebrow{color:var(--vink-blue)!important;font-weight:800!important;letter-spacing:.12em!important}
body.vink-corporate-app input,body.vink-corporate-app select,body.vink-corporate-app textarea{border:1px solid #ccd7e1!important;border-radius:7px!important;background:#fff!important;color:var(--vink-text)!important;min-height:39px;box-shadow:0 1px 2px rgba(0,0,0,.02);transition:.15s ease}
body.vink-corporate-app input:focus,body.vink-corporate-app select:focus,body.vink-corporate-app textarea:focus{outline:0!important;border-color:var(--vink-blue)!important;box-shadow:0 0 0 3px rgba(22,93,156,.12)!important}
body.vink-corporate-app button,body.vink-corporate-app .primary-btn,body.vink-corporate-app .main-btn,body.vink-corporate-app .event-primary,body.vink-corporate-app .save-user{border-radius:7px!important;font-weight:750!important;transition:.15s ease!important}
body.vink-corporate-app button:hover{transform:translateY(-1px)}
body.vink-corporate-app .primary-btn,body.vink-corporate-app .main-btn,body.vink-corporate-app .event-primary,body.vink-corporate-app .save-user{background:var(--vink-navy)!important;color:#fff!important;border:1px solid var(--vink-navy)!important;box-shadow:0 5px 12px rgba(7,29,51,.15)!important}
body.vink-corporate-app .ghost-btn,body.vink-corporate-app .soft-btn,body.vink-corporate-app .btn-secondary,body.vink-corporate-app .event-secondary{background:#fff!important;color:var(--vink-navy)!important;border:1px solid #bac7d2!important}
body.vink-corporate-app table{border-collapse:separate!important;border-spacing:0!important;width:100%}
body.vink-corporate-app thead th{background:#f0f4f7!important;color:#344659!important;border-bottom:1px solid #d6e0e8!important;font-size:11px!important;text-transform:uppercase;letter-spacing:.035em;white-space:nowrap}
body.vink-corporate-app tbody td{border-bottom:1px solid #e7edf2!important;font-size:12px!important;vertical-align:middle!important}
body.vink-corporate-app tbody tr:hover td{background:#f8fafc!important}
body.vink-corporate-app .table-wrap{border:1px solid var(--vink-border);border-radius:9px;overflow:auto!important;background:#fff}
body.vink-corporate-app .pill,body.vink-corporate-app .status-pill,body.vink-corporate-app .count-pill{border-radius:999px!important}
body.vink-corporate-app .collapsible-toggle{background:linear-gradient(90deg,#f8fafc,#fff)!important;color:var(--vink-navy)!important;border-bottom:1px solid var(--vink-border)!important}
body.vink-corporate-app .vink-watermark{opacity:.025!important}
/* Home aziendale */
body.vink-home-page .home-grid{display:grid!important;grid-template-columns:repeat(4,minmax(180px,1fr))!important;gap:16px!important}
body.vink-home-page .vink-card{min-height:145px!important;padding:20px!important;text-align:left!important;align-items:flex-start!important;justify-content:flex-start!important;position:relative;overflow:hidden}
body.vink-home-page .vink-card::after{content:"";position:absolute;width:80px;height:80px;border-radius:50%;right:-30px;bottom:-30px;background:rgba(255,202,5,.13)}
body.vink-home-page .vink-card:hover{transform:translateY(-4px)!important;border-color:#e5b900!important;box-shadow:0 15px 34px rgba(7,29,51,.13)!important}
/* login */
body.vink-login-page{padding-left:0!important;display:grid;place-items:center;background:linear-gradient(135deg,#06192b 0%,#0d3154 60%,#ffca05 160%)!important}
body.vink-login-page .login-shell{border-radius:16px!important;box-shadow:0 25px 70px rgba(0,0,0,.28)!important;overflow:hidden!important;border:1px solid rgba(255,255,255,.25)!important}
body.vink-login-page .login-brand{background:#fff!important}
body.vink-login-page .login-btn{background:var(--vink-yellow)!important;color:var(--vink-navy)!important;border:0!important}
.vink-mobile-menu{display:none}
@media(max-width:1100px){body.vink-home-page .home-grid{grid-template-columns:repeat(3,minmax(180px,1fr))!important}}
@media(max-width:850px){body.vink-corporate-app{padding-left:0}.vink-corporate-sidebar{transform:translateX(-100%);transition:.2s ease}.vink-corporate-sidebar.open{transform:translateX(0)}.vink-mobile-menu{display:grid;place-items:center;position:fixed;left:12px;top:13px;width:38px;height:38px;border:0;border-radius:8px;background:var(--vink-navy);color:#fff;z-index:11000}.vink-page-banner{padding-left:18px;padding-right:18px}body.vink-corporate-app .modern-container,body.vink-corporate-app .events-shell,body.vink-corporate-app .purchases-shell,body.vink-corporate-app .transport-shell,body.vink-corporate-app .users-shell,body.vink-corporate-app .home-grid{padding-left:18px!important;padding-right:18px!important}body.vink-home-page .home-grid{grid-template-columns:repeat(2,minmax(150px,1fr))!important}body.vink-corporate-app>.app-header,body.vink-corporate-app>.vink-header{padding-left:62px!important}}
@media(max-width:560px){body.vink-home-page .home-grid{grid-template-columns:1fr!important}.vink-page-banner{align-items:flex-start;flex-direction:column}.vink-page-banner h2{font-size:21px}}


.vink-corporate-nav a{position:relative}
.nav-notification-badge{margin-left:auto;min-width:22px;height:22px;padding:0 6px;border-radius:999px;background:#d54343;color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:900;box-shadow:0 3px 8px rgba(213,67,67,.28)}
.nav-notification-badge[hidden]{display:none!important}

/* Intestazione pagina unica e compatta: niente doppio titolo sotto la barra gialla */
body.vink-corporate-app>.app-header,body.vink-corporate-app>.vink-header{justify-content:flex-start!important;gap:14px!important}
body.vink-corporate-app>.app-header h1,body.vink-corporate-app>.vink-header h1{flex:0 0 auto!important}
.vink-header-subtitle{font-size:12px;color:rgba(18,32,46,.72);font-weight:650;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:52vw;padding-left:14px;border-left:1px solid rgba(18,32,46,.2)}
.vink-page-banner{display:none!important}
@media(max-width:850px){.vink-header-subtitle{display:none}}
/* Utente sempre allineato nell'header aziendale */
body.vink-corporate-app>.app-header,body.vink-corporate-app>.vink-header{padding-right:245px!important}
@media(max-width:850px){body.vink-corporate-app>.app-header,body.vink-corporate-app>.vink-header{padding-right:205px!important}}

/* Permessi: una voce vietata non deve mai essere resa visibile da regole di layout. */
[data-vink-forbidden]{display:none!important}
