/* ============================================
   PRIMĂRIA BACĂU — SISTEM MANAGEMENT INTEGRAT
   Style Sheet Principal — Toate Paginile
   Versiune: 2.0 — Full Rewrite
   ============================================ */
@import url('https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,300;0,9..40,400;0,9..40,500;0,9..40,600;0,9..40,700;0,9..40,800;1,9..40,400&family=DM+Serif+Display:ital@0;1&family=JetBrains+Mono:wght@400;500;600&display=swap');

:root {
  --navy-950:#0a0f1f;--navy-900:#0f1729;--navy-800:#162040;--navy-700:#1e2d56;--navy-600:#283d6e;--navy-500:#3655a0;--navy-400:#4a6fc4;--navy-300:#7b9cdb;--navy-200:#b0c4eb;--navy-100:#dce6f5;--navy-50:#eef2fa;
  --gold-600:#b8860b;--gold-500:#d4a017;--gold-400:#e6b422;--gold-300:#f0cc5b;--gold-200:#f5dc8a;--gold-100:#faf0c8;--gold-50:#fdf8e8;
  --success-600:#0d7a3e;--success-500:#16a34a;--success-400:#22c55e;--success-100:#dcfce7;--success-50:#f0fdf4;
  --info-600:#0277b5;--info-500:#0ea5e9;--info-400:#38bdf8;--info-100:#e0f2fe;--info-50:#f0f9ff;
  --warning-600:#c47e0b;--warning-500:#f59e0b;--warning-400:#fbbf24;--warning-100:#fef3c7;--warning-50:#fffbeb;
  --danger-600:#c62828;--danger-500:#ef4444;--danger-400:#f87171;--danger-100:#fee2e2;--danger-50:#fef2f2;
  --gray-950:#0c0e14;--gray-900:#171923;--gray-800:#1f2433;--gray-700:#2d3348;--gray-600:#4a5168;--gray-500:#64748b;--gray-400:#8b95a9;--gray-300:#b0b8c9;--gray-200:#d1d7e3;--gray-100:#e8ecf2;--gray-50:#f4f6f9;--white:#ffffff;
  --bg-primary:var(--gray-50);--bg-card:var(--white);--text-primary:var(--gray-900);--text-secondary:var(--gray-600);--text-muted:var(--gray-500);
  --border-default:var(--gray-200);--border-light:var(--gray-100);
  --shadow-sm:0 2px 4px rgba(15,23,42,.06),0 1px 2px rgba(15,23,42,.04);--shadow-md:0 4px 12px rgba(15,23,42,.08),0 2px 4px rgba(15,23,42,.04);--shadow-lg:0 8px 24px rgba(15,23,42,.10),0 4px 8px rgba(15,23,42,.05);--shadow-xl:0 16px 40px rgba(15,23,42,.12),0 6px 12px rgba(15,23,42,.06);
  --font-sans:'DM Sans',-apple-system,BlinkMacSystemFont,sans-serif;--font-serif:'DM Serif Display',Georgia,serif;--font-mono:'JetBrains Mono','Fira Code',monospace;
  --radius-sm:6px;--radius-md:10px;--radius-lg:14px;--radius-xl:20px;--radius-full:9999px;
  --ease-out:cubic-bezier(.16,1,.3,1);--dur-fast:150ms;--dur-normal:300ms;--dur-slow:500ms;
  --container-max:1320px;--container-narrow:900px;--nav-height:64px;
  --sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:20px;--sp-6:24px;--sp-8:32px;--sp-10:40px;--sp-12:48px;--sp-16:64px;--sp-20:80px;--sp-24:96px;
}

/* ── RESET ── */
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
body{font-family:var(--font-sans);font-size:16px;line-height:1.7;color:var(--text-primary);background:var(--bg-primary);overflow-x:hidden;min-height:100vh}
img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button{font-family:inherit;cursor:pointer}ul,ol{list-style:none}
::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--gray-100)}::-webkit-scrollbar-thumb{background:var(--navy-300);border-radius:var(--radius-full)}

/* ══════════════════════════════════════
   NAVIGATION
   ══════════════════════════════════════ */
.navbar{position:fixed;top:0;left:0;right:0;z-index:1000;height:var(--nav-height);background:rgba(15,23,41,.92);backdrop-filter:blur(24px) saturate(1.8);-webkit-backdrop-filter:blur(24px) saturate(1.8);border-bottom:1px solid rgba(255,255,255,.06);transition:background var(--dur-normal) var(--ease-out),box-shadow var(--dur-normal) var(--ease-out)}
.navbar.scrolled{background:rgba(10,15,31,.97);box-shadow:0 4px 20px rgba(0,0,0,.25)}
.nav-inner{max-width:var(--container-max);margin:0 auto;display:flex;align-items:center;justify-content:space-between;padding:0 var(--sp-8);height:100%}
.nav-brand{display:flex;align-items:center;gap:var(--sp-3);color:var(--white);font-weight:700;font-size:.92rem;letter-spacing:-.01em;white-space:nowrap}
.nav-brand-icon{width:34px;height:34px;background:linear-gradient(135deg,var(--gold-500),var(--gold-400));border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;font-size:.85rem;font-weight:800;color:var(--navy-900);flex-shrink:0}
.nav-links{display:flex;align-items:center;gap:2px;flex-wrap:wrap;justify-content:flex-end}
.nav-links a{color:rgba(255,255,255,.6);font-size:.78rem;font-weight:500;padding:6px 12px;border-radius:var(--radius-sm);transition:all var(--dur-fast) var(--ease-out);white-space:nowrap}
.nav-links a:hover{color:rgba(255,255,255,.9);background:rgba(255,255,255,.08)}
.nav-links a.active{color:var(--gold-300);background:rgba(212,160,23,.12)}
.nav-hamburger{display:none;flex-direction:column;gap:5px;padding:var(--sp-2);background:none;border:none}
.nav-hamburger span{display:block;width:22px;height:2px;background:var(--white);border-radius:2px;transition:var(--dur-fast)}
.nav-mobile-overlay{display:none;position:fixed;inset:0;top:var(--nav-height);background:rgba(10,15,31,.98);backdrop-filter:blur(20px);z-index:999;padding:var(--sp-6);overflow-y:auto}
.nav-mobile-overlay.open{display:block}
.nav-mobile-overlay a{display:block;color:rgba(255,255,255,.7);font-size:1rem;font-weight:500;padding:var(--sp-4) var(--sp-5);border-radius:var(--radius-md);transition:var(--dur-fast);border-bottom:1px solid rgba(255,255,255,.05)}
.nav-mobile-overlay a:hover,.nav-mobile-overlay a.active{color:var(--gold-300);background:rgba(212,160,23,.08)}

/* ══════════════════════════════════════
   PAGE HERO
   ══════════════════════════════════════ */
.page-hero{padding:calc(var(--nav-height) + var(--sp-16)) var(--sp-8) var(--sp-16);background:linear-gradient(165deg,var(--navy-950) 0%,var(--navy-800) 45%,var(--navy-700) 100%);position:relative;overflow:hidden}
.page-hero::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 600px 400px at 80% 20%,rgba(212,160,23,.08) 0%,transparent 70%),radial-gradient(ellipse 400px 300px at 10% 80%,rgba(74,111,196,.06) 0%,transparent 70%);pointer-events:none}
.page-hero::after{content:'';position:absolute;inset:0;background:url("data:image/svg+xml,%3Csvg width='40' height='40' viewBox='0 0 40 40' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='%23ffffff' fill-opacity='0.015'%3E%3Cpath d='M20 20h20v20H20zM0 0h20v20H0z'/%3E%3C/g%3E%3C/svg%3E");pointer-events:none}
.page-hero-inner{max-width:var(--container-max);margin:0 auto;position:relative;z-index:2}
.page-hero-label{display:inline-flex;align-items:center;gap:var(--sp-2);font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:2px;color:var(--gold-400);margin-bottom:var(--sp-5)}
.page-hero-label::before{content:'';width:24px;height:2px;background:var(--gold-500);border-radius:var(--radius-full)}
.page-hero h1{font-family:var(--font-serif);font-size:clamp(2rem,4.5vw,3.2rem);color:var(--white);font-weight:400;line-height:1.2;margin-bottom:var(--sp-5);max-width:800px}
.page-hero h1 em{font-style:italic;color:var(--gold-300)}
.page-hero-desc{font-size:1.05rem;color:rgba(255,255,255,.65);line-height:1.8;max-width:680px}
.page-hero-meta{display:flex;gap:var(--sp-6);margin-top:var(--sp-10);padding-top:var(--sp-6);border-top:1px solid rgba(255,255,255,.08);flex-wrap:wrap}
.hero-meta-item{display:flex;flex-direction:column;gap:2px}
.hero-meta-item .label{font-size:.68rem;text-transform:uppercase;letter-spacing:1.5px;color:rgba(255,255,255,.35);font-weight:600}
.hero-meta-item .value{font-size:.9rem;color:rgba(255,255,255,.85);font-weight:600}

/* ══════════════════════════════════════
   CONTENT & SECTIONS
   ══════════════════════════════════════ */
.page-content{max-width:var(--container-max);margin:0 auto;padding:var(--sp-16) var(--sp-8) var(--sp-24)}
.page-content-narrow{max-width:var(--container-narrow);margin:0 auto;padding:var(--sp-16) var(--sp-8) var(--sp-24)}
.section-header{margin-bottom:var(--sp-12)}
.section-header.centered{text-align:center}
.section-label{display:inline-flex;align-items:center;gap:var(--sp-2);font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:1.8px;color:var(--gold-600);margin-bottom:var(--sp-3)}
.section-title{font-family:var(--font-serif);font-size:clamp(1.6rem,3vw,2.4rem);color:var(--navy-800);font-weight:400;line-height:1.25;margin-bottom:var(--sp-4)}
.section-desc{font-size:.95rem;color:var(--text-secondary);line-height:1.8;max-width:680px}
.section-header.centered .section-desc{margin:0 auto}
.section-divider{height:1px;background:linear-gradient(90deg,transparent,var(--border-default),transparent);margin:var(--sp-16) 0}

/* ══════════════════════════════════════
   CARDS
   ══════════════════════════════════════ */
.card{background:var(--bg-card);border-radius:var(--radius-lg);border:1px solid var(--border-default);box-shadow:var(--shadow-sm);transition:box-shadow var(--dur-normal) var(--ease-out),transform var(--dur-normal) var(--ease-out);overflow:hidden}
.card:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}
.card-static{background:var(--bg-card);border-radius:var(--radius-lg);border:1px solid var(--border-default);box-shadow:var(--shadow-sm);overflow:hidden}
.card-padding{padding:var(--sp-8)}.card-padding-lg{padding:var(--sp-10)}
.card-accent{position:relative}.card-accent::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;border-radius:var(--radius-lg) var(--radius-lg) 0 0}
.card-accent-blue::before{background:linear-gradient(90deg,var(--navy-500),var(--info-500))}
.card-accent-green::before{background:linear-gradient(90deg,var(--success-600),var(--success-400))}
.card-accent-gold::before{background:linear-gradient(90deg,var(--gold-600),var(--gold-400))}
.card-accent-red::before{background:linear-gradient(90deg,var(--danger-600),var(--danger-400))}
.card-accent-purple::before{background:linear-gradient(90deg,#7c3aed,#a855f7)}

/* ══════════════════════════════════════
   GRIDS
   ══════════════════════════════════════ */
.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--sp-6)}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--sp-6)}
.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--sp-6)}
.grid-auto-fill{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--sp-6)}
.grid-auto-fit{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:var(--sp-6)}
.columns-2{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--sp-6)}
.columns-3{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:var(--sp-6)}

/* ══════════════════════════════════════
   STAT GRID & STAT CARDS
   ══════════════════════════════════════ */
.stat-grid{display:grid;gap:var(--sp-4)}
.stat-grid.cols-2{grid-template-columns:repeat(2,1fr)}
.stat-grid.cols-3{grid-template-columns:repeat(3,1fr)}
.stat-grid.cols-4{grid-template-columns:repeat(4,1fr)}
.stat-card{text-align:center;padding:var(--sp-8) var(--sp-6);background:var(--bg-card);border-radius:var(--radius-lg);border:1px solid var(--border-light);box-shadow:var(--shadow-sm)}
.stat-value{font-family:var(--font-mono);font-size:2rem;font-weight:700;line-height:1.2;margin-bottom:var(--sp-2)}
.stat-number{font-family:var(--font-mono);font-size:2.5rem;font-weight:700;line-height:1;margin-bottom:var(--sp-2);background:linear-gradient(135deg,var(--navy-700),var(--navy-400));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.stat-number.gold{background:linear-gradient(135deg,var(--gold-600),var(--gold-400));-webkit-background-clip:text;background-clip:text}
.stat-label{font-size:.82rem;color:var(--text-muted);font-weight:500}
.stat-sublabel{font-size:.72rem;color:var(--gray-400);margin-top:var(--sp-1)}
.stat-detail{font-size:.78rem;color:var(--text-muted);margin-top:var(--sp-1)}

/* ══════════════════════════════════════
   TABS
   ══════════════════════════════════════ */
.tabs-wrap{display:flex;gap:var(--sp-2);flex-wrap:wrap;margin-bottom:var(--sp-8)}
.tabs-wrap.centered{justify-content:center}
.tab-btn{padding:var(--sp-3) var(--sp-5);border-radius:var(--radius-full);border:2px solid var(--border-default);background:var(--bg-card);font-size:.82rem;font-weight:600;cursor:pointer;transition:all var(--dur-fast) var(--ease-out);color:var(--text-secondary);font-family:var(--font-sans)}
.tab-btn:hover{border-color:var(--navy-300);color:var(--navy-700)}
.tab-btn.active{background:var(--navy-800);color:var(--white);border-color:var(--navy-800)}
.tab-panel{display:none;animation:fadeSlideUp var(--dur-normal) var(--ease-out)}
.tab-panel.active{display:block}
@keyframes fadeSlideUp{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}

/* ══════════════════════════════════════
   INFO & HIGHLIGHT BOXES
   ══════════════════════════════════════ */
.info-box{background:linear-gradient(135deg,rgba(22,32,64,.03),rgba(212,160,23,.03));border:1px solid var(--border-default);border-radius:var(--radius-lg);padding:var(--sp-8)}
.info-box h3{font-family:var(--font-serif);font-size:1.15rem;color:var(--navy-800);margin-bottom:var(--sp-4)}
.info-box p{font-size:.92rem;color:var(--text-secondary);line-height:1.8;margin-bottom:var(--sp-3)}
.info-box p:last-child{margin-bottom:0}
.highlight-box{border-radius:var(--radius-lg);padding:var(--sp-8);position:relative;overflow:hidden}
.highlight-box.navy{background:linear-gradient(165deg,var(--navy-900),var(--navy-700));color:var(--white)}
.highlight-box.gold{background:linear-gradient(165deg,var(--gold-50),var(--gold-100));border:1px solid var(--gold-200)}

/* ══════════════════════════════════════
   ICONS
   ══════════════════════════════════════ */
.icon-box{width:48px;height:48px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;font-size:1.3rem;flex-shrink:0}
.icon-box-sm{width:36px;height:36px;font-size:1rem;border-radius:var(--radius-sm)}
.icon-box-lg{width:60px;height:60px;font-size:1.6rem;border-radius:var(--radius-lg)}
.icon-box.blue{background:rgba(14,165,233,.1)}.icon-box.green{background:rgba(22,163,74,.1)}.icon-box.gold{background:rgba(212,160,23,.1)}.icon-box.red{background:rgba(239,68,68,.1)}.icon-box.purple{background:rgba(124,58,237,.1)}.icon-box.navy{background:rgba(30,45,86,.08)}

/* ══════════════════════════════════════
   KPI ITEMS & PROGRESS BARS
   ══════════════════════════════════════ */
.kpi-list{display:flex;flex-direction:column;gap:var(--sp-1);margin-top:var(--sp-3)}
.kpi-item{display:flex;align-items:flex-start;gap:var(--sp-3);font-size:.8rem;color:var(--text-secondary);padding:4px 0;line-height:1.6}
.kpi-dot{width:6px;height:6px;border-radius:var(--radius-full);flex-shrink:0;margin-top:7px}
.kpi-dot.blue{background:var(--info-500)}.kpi-dot.green{background:var(--success-500)}.kpi-dot.gold{background:var(--gold-500)}.kpi-dot.red{background:var(--danger-500)}
.progress-bar{height:6px;background:var(--gray-100);border-radius:var(--radius-full);overflow:hidden}
.progress-fill{height:100%;border-radius:var(--radius-full);transition:width 1.2s var(--ease-out);width:0%}
.progress-fill.blue{background:linear-gradient(90deg,var(--navy-500),var(--info-500))}
.progress-fill.green{background:linear-gradient(90deg,var(--success-600),var(--success-400))}
.progress-fill.gold{background:linear-gradient(90deg,var(--gold-600),var(--gold-400))}
.progress-fill.red{background:linear-gradient(90deg,var(--danger-600),var(--danger-400))}
.progress-fill.purple{background:linear-gradient(90deg,#7c3aed,#a855f7)}

/* ══════════════════════════════════════
   KAIZEN LIST
   ══════════════════════════════════════ */
.kaizen-list{display:flex;flex-direction:column;gap:var(--sp-4)}
.kaizen-item{display:flex;align-items:flex-start;gap:var(--sp-4);font-size:.88rem;color:var(--text-secondary);line-height:1.8;padding:var(--sp-4);background:var(--gray-50);border-radius:var(--radius-md);border:1px solid var(--border-light)}
.kaizen-icon{font-size:1.3rem;flex-shrink:0;width:32px;text-align:center}

/* ══════════════════════════════════════
   BADGES & TAGS
   ══════════════════════════════════════ */
.badge{display:inline-flex;align-items:center;gap:var(--sp-1);font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;padding:3px 10px;border-radius:var(--radius-full)}
.badge-blue{background:rgba(14,165,233,.1);color:var(--info-600)}.badge-green{background:rgba(22,163,74,.1);color:var(--success-600)}.badge-gold{background:rgba(212,160,23,.1);color:var(--gold-600)}.badge-red{background:rgba(239,68,68,.1);color:var(--danger-600)}.badge-purple{background:rgba(124,58,237,.1);color:#7c3aed}.badge-navy{background:rgba(30,45,86,.08);color:var(--navy-700)}
.meta-tags{display:flex;flex-wrap:wrap;gap:var(--sp-2);margin-top:var(--sp-4)}
.meta-tag{display:flex;align-items:center;gap:var(--sp-1);font-size:.76rem;font-weight:600;padding:4px 10px;border-radius:var(--radius-full);background:var(--gray-50)}
.meta-tag.responsible{color:var(--info-600)}.meta-tag.timeline{color:var(--gold-600)}.meta-tag.budget{color:var(--success-600)}.meta-tag.priority{color:var(--danger-600)}

/* ══════════════════════════════════════
   STEP CARDS (PDCA)
   ══════════════════════════════════════ */
.step-card{background:var(--gray-50);border-radius:var(--radius-lg);padding:var(--sp-6) var(--sp-8);margin-bottom:var(--sp-4);border-left:3px solid var(--border-default);transition:border-color var(--dur-fast) var(--ease-out)}
.step-card:hover{border-left-color:var(--navy-400)}
.step-card h4{font-size:.95rem;font-weight:700;color:var(--navy-800);margin-bottom:var(--sp-3);display:flex;align-items:center;gap:var(--sp-2);flex-wrap:wrap}
.step-card .desc{font-size:.88rem;color:var(--text-secondary);line-height:1.7}
.sub-steps{margin-top:var(--sp-4);padding-left:var(--sp-4);border-left:2px solid var(--border-light)}
.sub-step{padding:var(--sp-2) 0 var(--sp-2) var(--sp-4);font-size:.84rem;color:var(--text-secondary);line-height:1.6}
.sub-step strong{color:var(--text-primary);font-weight:600;font-family:var(--font-mono);font-size:.78rem}
.impl-row{display:flex;align-items:center;gap:var(--sp-3);margin-top:var(--sp-4)}
.impl-bar{flex:1;max-width:260px}
.impl-label{font-size:.75rem;color:var(--text-muted);font-weight:600}
.deliverables{margin-top:var(--sp-4);background:rgba(22,163,74,.04);border:1px solid rgba(22,163,74,.12);border-radius:var(--radius-md);padding:var(--sp-4) var(--sp-5)}
.deliverables h5{font-size:.82rem;font-weight:700;color:var(--success-600);margin-bottom:var(--sp-2)}
.deliverables li{font-size:.82rem;color:var(--text-secondary);margin-bottom:2px;margin-left:var(--sp-5);list-style:disc}

/* ══════════════════════════════════════
   PDCA SIDEBAR LAYOUT
   ══════════════════════════════════════ */
.pdca-layout{display:grid;grid-template-columns:280px 1fr;gap:var(--sp-8);min-height:600px}
.pdca-sidebar{display:flex;flex-direction:column;gap:var(--sp-2);position:sticky;top:80px;align-self:start}
.pdca-btn{padding:var(--sp-5) var(--sp-6);border-radius:var(--radius-lg);border:2px solid var(--border-default);background:var(--bg-card);cursor:pointer;text-align:left;transition:all var(--dur-fast);position:relative;overflow:hidden;font-family:var(--font-sans)}
.pdca-btn::before{content:'';position:absolute;left:0;top:0;bottom:0;width:4px;border-radius:0 4px 4px 0}
.pdca-btn[data-p="plan"]::before{background:var(--navy-500)}.pdca-btn[data-p="do"]::before{background:var(--success-500)}.pdca-btn[data-p="check"]::before{background:var(--warning-500)}.pdca-btn[data-p="act"]::before{background:var(--danger-500)}
.pdca-btn .pn{font-weight:700;font-size:.95rem;display:block;margin-bottom:2px;color:var(--text-primary)}
.pdca-btn .ps{font-size:.78rem;color:var(--text-muted)}
.pdca-btn:hover{border-color:var(--navy-300)}.pdca-btn.active{border-color:var(--navy-500);background:rgba(22,32,64,.03)}
.pdca-panel{display:none;animation:fadeSlideUp var(--dur-normal) var(--ease-out)}.pdca-panel.active{display:block}
.phase-head{display:flex;align-items:center;gap:var(--sp-4);margin-bottom:var(--sp-6)}
.phase-ico{width:56px;height:56px;border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:800;color:var(--white)}
.pp .phase-ico{background:linear-gradient(135deg,var(--navy-500),var(--navy-400))}
.pd .phase-ico{background:linear-gradient(135deg,var(--success-600),var(--success-400))}
.pc .phase-ico{background:linear-gradient(135deg,var(--warning-600),var(--warning-400))}
.pa .phase-ico{background:linear-gradient(135deg,var(--danger-600),var(--danger-400))}
.phase-head h3{font-family:var(--font-serif);font-size:1.3rem;color:var(--navy-800)}
.phase-head p{font-size:.88rem;color:var(--text-secondary)}
/* ══════════════════════════════════════
   FLOWCHARTS (harti-proces.html)
   ══════════════════════════════════════ */
.flowchart{display:flex;flex-direction:column;align-items:center;gap:0;padding:var(--sp-6) var(--sp-4);max-width:700px;margin:0 auto}
.flow-step{padding:var(--sp-4) var(--sp-8);border-radius:var(--radius-lg);text-align:center;width:100%;font-size:.88rem;font-weight:600;line-height:1.6;transition:transform var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast)}
.flow-step:hover{transform:scale(1.02);box-shadow:var(--shadow-md)}
.flow-step.start{background:linear-gradient(135deg,var(--navy-700),var(--navy-500));color:var(--white);border-radius:var(--radius-full);padding:var(--sp-4) var(--sp-6)}
.flow-step.process{background:var(--bg-card);border:2px solid var(--border-default);color:var(--text-primary)}
.flow-step.decision{background:var(--gold-50);border:2px solid var(--gold-300);color:var(--gold-600);font-weight:700;border-radius:var(--radius-md);transform:none;clip-path:none}
.flow-step.end{background:linear-gradient(135deg,var(--success-600),var(--success-400));color:var(--white);border-radius:var(--radius-full);padding:var(--sp-4) var(--sp-6)}
.flow-step.warning{background:var(--danger-50);border:2px solid var(--danger-100);color:var(--danger-600);font-size:.82rem}
.flow-step.success{background:var(--success-50);border:2px solid var(--success-100);color:var(--success-600);font-size:.82rem}
.flow-step.info{background:var(--info-50);border:2px solid var(--info-100);color:var(--info-600);font-size:.82rem}

.flow-arrow{display:flex;align-items:center;justify-content:center;width:3px;height:36px;background:var(--navy-300);margin:0 auto;position:relative;font-size:0;color:transparent;overflow:hidden;text-indent:-9999px}
.flow-arrow::after{content:'';position:absolute;bottom:-1px;left:50%;transform:translateX(-50%);width:0;height:0;border-left:7px solid transparent;border-right:7px solid transparent;border-top:9px solid var(--navy-300)}

.flow-arrow-split{display:flex;gap:var(--sp-6);justify-content:center;width:100%;padding:var(--sp-2) 0;position:relative}
.flow-arrow-split::before{content:'';position:absolute;top:0;left:25%;right:25%;height:2px;background:var(--navy-200)}

.flow-branch{flex:1;display:flex;flex-direction:column;align-items:center;gap:var(--sp-2);position:relative;padding-top:var(--sp-4)}
.flow-branch::before{content:'';position:absolute;top:0;left:50%;width:2px;height:16px;background:var(--navy-200)}

.flow-label{display:inline-block;font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:1px;padding:2px 12px;border-radius:var(--radius-full);background:var(--navy-800);color:var(--white);margin-bottom:var(--sp-2)}

/* ══════════════════════════════════════
   DEPARTMENT TABS (harti-proces.html)
   ══════════════════════════════════════ */
.dept-tabs{display:flex;gap:var(--sp-2);flex-wrap:wrap;justify-content:center;margin-bottom:var(--sp-8)}
.dept-btn{padding:var(--sp-2) var(--sp-4);border-radius:var(--radius-full);border:1px solid var(--border-default);background:var(--bg-card);font-size:.8rem;font-weight:600;cursor:pointer;transition:all var(--dur-fast);color:var(--text-secondary);font-family:var(--font-sans)}
.dept-btn:hover{border-color:var(--navy-300);color:var(--navy-700)}
.dept-btn.active{background:var(--navy-800);color:var(--white);border-color:var(--navy-800)}
.proc-panel{display:none;animation:fadeSlideUp var(--dur-normal) var(--ease-out)}.proc-panel.active{display:block}
.proc-content{padding:var(--sp-8)}
.proc-content h3{font-family:var(--font-serif);font-size:1.15rem;color:var(--navy-800);margin-bottom:var(--sp-2)}
.proc-sub{font-size:.88rem;color:var(--text-secondary);margin-bottom:var(--sp-6)}
.proc-details{margin-top:var(--sp-6);padding:var(--sp-6);background:rgba(22,32,64,.02);border-radius:var(--radius-lg);border:1px solid var(--border-default)}
.proc-details h4{font-size:.95rem;font-weight:700;color:var(--navy-800);margin-bottom:var(--sp-4)}
.proc-detail-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--sp-4)}
.proc-detail-item h5{font-size:.85rem;font-weight:600;color:var(--text-primary);margin-bottom:var(--sp-2)}
.proc-detail-item p{font-size:.82rem;color:var(--text-secondary);line-height:1.6}

/* ══════════════════════════════════════
   GANTT CHART (gantt.html — new structure)
   ══════════════════════════════════════ */
.gantt-chart{overflow-x:auto;background:var(--bg-card);border-radius:var(--radius-lg);border:1px solid var(--border-default);box-shadow:var(--shadow-sm)}
.gantt-header{display:grid;grid-template-columns:260px 1fr;background:var(--navy-800);position:sticky;top:0;z-index:5;border-radius:var(--radius-lg) var(--radius-lg) 0 0}
.gantt-label-col{padding:var(--sp-3) var(--sp-5);font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--white);display:flex;align-items:center}
.gantt-months{display:flex;overflow:hidden}
.gantt-months span{flex:1;padding:var(--sp-3) var(--sp-2);font-size:.68rem;font-weight:600;color:rgba(255,255,255,.7);text-align:center;border-left:1px solid rgba(255,255,255,.08);min-width:0;white-space:nowrap}

.gantt-section{grid-column:1/-1;padding:var(--sp-3) var(--sp-5);font-size:.82rem;font-weight:700;color:var(--navy-800);background:var(--navy-50);border-top:2px solid var(--navy-200);border-bottom:1px solid var(--border-light);text-transform:uppercase;letter-spacing:.5px}

.gantt-row{display:grid;grid-template-columns:260px 1fr;border-bottom:1px solid var(--border-light);transition:background var(--dur-fast)}
.gantt-row:hover{background:rgba(22,32,64,.015)}
.gantt-label{padding:var(--sp-3) var(--sp-5);font-size:.82rem;font-weight:500;color:var(--text-primary);border-right:1px solid var(--border-light);display:flex;align-items:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.gantt-bar-area{position:relative;min-height:42px;padding:4px 0}

.gantt-bar{position:absolute;top:50%;transform:translateY(-50%);height:24px;border-radius:var(--radius-sm);cursor:pointer;transition:transform var(--dur-fast),filter var(--dur-fast);z-index:2;display:flex;align-items:center;justify-content:center;font-size:.64rem;font-weight:700;color:var(--white);text-shadow:0 1px 2px rgba(0,0,0,.2);padding:0 6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.gantt-bar:hover{transform:translateY(-50%) scaleY(1.3);filter:brightness(1.15);z-index:10}

.gantt-bar.navy{background:linear-gradient(90deg,var(--navy-500),var(--navy-400))}
.gantt-bar.info{background:linear-gradient(90deg,var(--info-600),var(--info-400))}
.gantt-bar.success{background:linear-gradient(90deg,var(--success-600),var(--success-400))}
.gantt-bar.danger{background:linear-gradient(90deg,var(--danger-600),var(--danger-400))}
.gantt-bar.gold{background:linear-gradient(90deg,var(--gold-600),var(--gold-400))}
.gantt-bar.purple{background:linear-gradient(90deg,#7c3aed,#a855f7)}

.gantt-milestone{position:absolute;top:50%;transform:translateY(-50%) rotate(45deg);width:14px;height:14px;background:var(--danger-500);border:2px solid var(--white);box-shadow:0 0 0 2px var(--danger-500),var(--shadow-md);z-index:3;cursor:pointer;font-size:0;color:transparent;overflow:hidden}
.gantt-milestone:hover{transform:translateY(-50%) rotate(45deg) scale(1.3)}

.gantt-tooltip{position:fixed;background:var(--navy-900);color:var(--white);padding:var(--sp-3) var(--sp-5);border-radius:var(--radius-md);font-size:.82rem;pointer-events:none;z-index:9999;max-width:400px;box-shadow:var(--shadow-xl);opacity:0;transition:opacity .15s;line-height:1.5}
.gantt-tooltip.visible{opacity:1}

/* ══════════════════════════════════════
   ORGANIGRAMA (organigrama.html — new)
   ══════════════════════════════════════ */
.org-level-1{display:flex;justify-content:center;margin-bottom:var(--sp-8)}
.org-level-row{display:flex;gap:var(--sp-6);justify-content:center;flex-wrap:wrap;margin-bottom:var(--sp-8);position:relative;padding-top:var(--sp-6)}
.org-level-row::before{content:'';position:absolute;top:0;left:10%;right:10%;height:2px;background:var(--border-default)}

.org-card{padding:var(--sp-6);border-radius:var(--radius-lg);text-align:center;min-width:200px;max-width:320px;flex:1;box-shadow:var(--shadow-sm);transition:transform var(--dur-fast),box-shadow var(--dur-fast);position:relative;border:2px solid var(--border-default);background:var(--bg-card)}
.org-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}
.org-card::before{content:'';position:absolute;top:-var(--sp-6);left:50%;width:2px;height:var(--sp-6);background:var(--border-default)}
.org-level-1 .org-card::before{display:none}

.org-card.org-primary{background:linear-gradient(135deg,var(--navy-800),var(--navy-600));color:var(--white);border-color:var(--navy-600);min-width:260px}
.org-card.org-secondary{background:linear-gradient(135deg,var(--navy-50),var(--white));border-color:var(--navy-200)}
.org-card.org-new{background:linear-gradient(135deg,var(--gold-50),var(--white));border-color:var(--gold-300)}

.org-icon{font-size:2rem;margin-bottom:var(--sp-2)}
.org-name{font-size:1rem;font-weight:700;margin-bottom:var(--sp-1)}
.org-subtitle{font-size:.78rem;opacity:.7;margin-bottom:var(--sp-3);font-weight:500}
.org-details{font-size:.78rem;line-height:1.7;opacity:.75;text-align:left}

.org-dept-header h3{font-family:var(--font-serif)}

/* Org Tree */
.org-tree{padding-left:0}
.org-tree-item{padding:var(--sp-4) var(--sp-5);border-left:3px solid var(--border-default);margin-bottom:var(--sp-2);border-radius:0 var(--radius-md) var(--radius-md) 0;background:var(--gray-50);transition:border-color var(--dur-fast),background var(--dur-fast)}
.org-tree-item:hover{background:var(--white);box-shadow:var(--shadow-sm)}
.org-tree-item.level-2{border-left-color:var(--navy-400);margin-left:0;padding-left:var(--sp-6);background:var(--navy-50)}
.org-tree-item.level-3{margin-left:var(--sp-8);border-left-color:var(--success-400)}
.org-tree-item.level-4{margin-left:calc(var(--sp-8) + var(--sp-6));border-left-color:var(--gray-300);padding:var(--sp-3) var(--sp-4)}

.org-tree-label{font-size:.88rem;font-weight:700;margin-bottom:var(--sp-1);display:inline-block;padding:2px 10px;border-radius:var(--radius-full)}
.org-tree-label.info{background:rgba(14,165,233,.1);color:var(--info-600)}
.org-tree-label.success{background:rgba(22,163,74,.1);color:var(--success-600)}
.org-tree-label.muted{background:var(--gray-100);color:var(--gray-600);font-size:.82rem;font-weight:600}
.org-tree-desc{font-size:.82rem;color:var(--text-secondary);line-height:1.7;margin-top:var(--sp-1)}
.org-tree-sub{margin-top:var(--sp-3);display:flex;flex-direction:column;gap:var(--sp-2)}

/* ══════════════════════════════════════
   TABLES (data tables for KPI, budget)
   ══════════════════════════════════════ */
.data-table{width:100%;border-collapse:collapse}
.data-table th{background:var(--navy-800);color:var(--white);padding:var(--sp-3) var(--sp-5);text-align:left;font-size:.78rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap}
.data-table td{padding:var(--sp-3) var(--sp-5);font-size:.85rem;border-bottom:1px solid var(--border-light);vertical-align:top}
.data-table tr:hover td{background:rgba(22,32,64,.015)}
.data-table .total td{font-weight:700;background:var(--gold-50);color:var(--navy-800);border-top:2px solid var(--gold-200)}
.amount{font-family:var(--font-mono);font-weight:600;font-variant-numeric:tabular-nums}
.text-bold{font-weight:700}

/* ══════════════════════════════════════
   RISK MATRIX (riscuri.html)
   ══════════════════════════════════════ */
.risk-matrix{padding:var(--sp-6)}
.risk-matrix-grid{display:grid;grid-template-columns:auto auto 1fr auto;grid-template-rows:auto;gap:0;align-items:center;max-width:500px;margin:0 auto}
.risk-axis-y{display:flex;flex-direction:column;gap:0;text-align:center;padding-right:var(--sp-3)}
.risk-axis-y span{height:56px;display:flex;align-items:center;justify-content:center;font-size:.82rem;font-weight:700;color:var(--navy-700)}
.risk-axis-y-label{writing-mode:vertical-rl;text-orientation:mixed;transform:rotate(180deg);font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:var(--text-muted);padding-right:var(--sp-2);white-space:nowrap}
.risk-grid-cells{display:grid;grid-template-columns:repeat(5,1fr);gap:3px}
.risk-cell{width:56px;height:56px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);font-size:.75rem;font-weight:700;color:var(--white);text-align:center;line-height:1.2;flex-direction:column}
.risk-cell.green{background:var(--success-500)}
.risk-cell.yellow{background:var(--warning-500)}
.risk-cell.orange{background:#f97316}
.risk-cell.red{background:var(--danger-500)}
.risk-cell strong{display:block;font-size:.7rem}
.risk-axis-x{display:flex;justify-content:space-around;padding-top:var(--sp-2);grid-column:3/4}
.risk-axis-x span{width:56px;text-align:center;font-size:.82rem;font-weight:700;color:var(--navy-700)}
.risk-axis-x-label{font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:var(--text-muted);text-align:center;grid-column:3/4;padding-top:var(--sp-1)}

/* Risk detail cards */
.risk-level{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;margin-bottom:var(--sp-2)}
.risk-level.high{color:var(--danger-500)}.risk-level.medium{color:var(--warning-500)}.risk-level.low{color:var(--success-500)}
.risk-card h5{font-size:.92rem;font-weight:700;color:var(--navy-800);margin-bottom:var(--sp-2)}
.risk-card p{font-size:.84rem;color:var(--text-secondary);line-height:1.7}
.mitigation{margin-top:var(--sp-3);padding-top:var(--sp-3);border-top:1px solid var(--border-light);font-size:.82rem;color:var(--info-600);font-weight:600;line-height:1.6}
/* ══════════════════════════════════════
   CONCLUSION BOX
   ══════════════════════════════════════ */
.conclusion-box{background:linear-gradient(165deg,var(--navy-900),var(--navy-700));border-radius:var(--radius-xl);padding:var(--sp-12);color:var(--white);position:relative;overflow:hidden}
.conclusion-box::before{content:'';position:absolute;top:-30%;right:-10%;width:400px;height:400px;background:radial-gradient(circle,rgba(212,160,23,.12) 0%,transparent 70%);border-radius:50%;pointer-events:none}
.conclusion-box h3{font-family:var(--font-serif);font-size:1.5rem;margin-bottom:var(--sp-5);position:relative}
.conclusion-box p{font-size:.95rem;line-height:1.8;opacity:.85;position:relative;max-width:850px;margin-bottom:var(--sp-3)}
.signature{margin-top:var(--sp-8);padding-top:var(--sp-6);border-top:1px solid rgba(255,255,255,.12);display:flex;justify-content:space-between;flex-wrap:wrap;gap:var(--sp-6);position:relative}
.sig-block .sig-label{font-size:.68rem;text-transform:uppercase;letter-spacing:1.5px;opacity:.45;margin-bottom:4px}
.sig-block .sig-name{font-weight:700;font-size:1rem}

/* ══════════════════════════════════════
   PNRR BOX
   ══════════════════════════════════════ */
.pnrr-box{background:linear-gradient(135deg,rgba(13,148,136,.05),rgba(45,212,191,.05));border:1px solid rgba(13,148,136,.15);border-radius:var(--radius-lg);padding:var(--sp-6)}
.pnrr-box h4{color:#0d7377;font-weight:700;font-size:.95rem;margin-bottom:var(--sp-3)}
.pnrr-box p,.pnrr-box li{font-size:.85rem;color:var(--text-secondary);line-height:1.7}
.pnrr-box ul{margin-left:var(--sp-5);list-style:disc}

/* ══════════════════════════════════════
   ANIMATIONS
   ══════════════════════════════════════ */
.anim{opacity:0;transform:translateY(24px);transition:opacity .6s var(--ease-out),transform .6s var(--ease-out)}
.anim.visible{opacity:1;transform:translateY(0)}
.anim-delay-1{transition-delay:.1s}.anim-delay-2{transition-delay:.2s}.anim-delay-3{transition-delay:.3s}.anim-delay-4{transition-delay:.4s}

/* ══════════════════════════════════════
   FOOTER
   ══════════════════════════════════════ */
.site-footer{background:var(--navy-950);color:rgba(255,255,255,.45);text-align:center;padding:var(--sp-8);font-size:.82rem;border-top:1px solid rgba(255,255,255,.05)}
.site-footer strong{color:rgba(255,255,255,.7)}

/* ══════════════════════════════════════
   UTILITIES
   ══════════════════════════════════════ */
.text-center{text-align:center}.text-sm{font-size:.85rem}.text-xs{font-size:.78rem}
.text-muted{color:var(--text-muted)}.text-navy{color:var(--navy-800)}.text-gold{color:var(--gold-600)}.text-bold{font-weight:700}
.font-serif{font-family:var(--font-serif)}.font-mono{font-family:var(--font-mono)}
.fw-600{font-weight:600}.fw-700{font-weight:700}
.mt-1{margin-top:var(--sp-1)}.mt-2{margin-top:var(--sp-2)}.mt-4{margin-top:var(--sp-4)}.mt-6{margin-top:var(--sp-6)}.mt-8{margin-top:var(--sp-8)}.mt-12{margin-top:var(--sp-12)}
.mb-4{margin-bottom:var(--sp-4)}.mb-6{margin-bottom:var(--sp-6)}.mb-8{margin-bottom:var(--sp-8)}
.p-6{padding:var(--sp-6)}.p-8{padding:var(--sp-8)}.rounded-lg{border-radius:var(--radius-lg)}
.overflow-x{overflow-x:auto}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.flex-wrap{flex-wrap:wrap}.w-full{width:100%}

/* ══════════════════════════════════════
   RESPONSIVE
   ══════════════════════════════════════ */

/* ── Tablet (≤1024px) ── */
@media(max-width:1024px){
  .nav-links{display:none}
  .nav-hamburger{display:flex}
  .page-hero{padding-top:calc(var(--nav-height) + var(--sp-12));padding-bottom:var(--sp-12)}
  .pdca-layout{grid-template-columns:1fr}
  .pdca-sidebar{flex-direction:row;overflow-x:auto;position:static}
  .grid-4{grid-template-columns:repeat(2,1fr)}
  .grid-3{grid-template-columns:repeat(2,1fr)}
  .stat-grid.cols-4{grid-template-columns:repeat(2,1fr)}
  .stat-grid.cols-3{grid-template-columns:repeat(2,1fr)}
  .org-level-row{gap:var(--sp-4)}
  .org-card{min-width:160px;max-width:260px}
}

/* ── Mobile (≤768px) ── */
@media(max-width:768px){
  .page-hero h1{font-size:1.8rem}
  .page-content{padding:var(--sp-12) var(--sp-5) var(--sp-16)}
  .section-title{font-size:1.5rem}
  .card-padding{padding:var(--sp-5)}.card-padding-lg{padding:var(--sp-6)}
  .page-hero-meta{gap:var(--sp-4)}
  .conclusion-box{padding:var(--sp-8)}
  .signature{flex-direction:column}
  .columns-2{grid-template-columns:1fr}
  .stat-grid.cols-4,.stat-grid.cols-3{grid-template-columns:repeat(2,1fr)}
  .gantt-chart{font-size:.8rem}
  .gantt-header{grid-template-columns:200px 1fr}
  .gantt-row{grid-template-columns:200px 1fr}
  .gantt-label{font-size:.75rem;padding:var(--sp-2) var(--sp-3)}
  .org-level-row{flex-direction:column;align-items:center}
  .org-card{min-width:auto;max-width:100%;width:100%}
  .org-tree-item.level-3{margin-left:var(--sp-4)}
  .org-tree-item.level-4{margin-left:var(--sp-8)}
  .flow-arrow-split{flex-direction:column;gap:var(--sp-4)}
  .flow-arrow-split::before{display:none}
  .flow-branch::before{display:none}
  .flow-branch{padding-top:0}
  .risk-cell{width:48px;height:48px;font-size:.65rem}
  .risk-axis-y span{height:48px;font-size:.72rem}
}

/* ── Small mobile (≤480px) ── */
@media(max-width:480px){
  .nav-inner{padding:0 var(--sp-4)}
  .page-hero{padding-left:var(--sp-5);padding-right:var(--sp-5)}
  .tabs-wrap{gap:var(--sp-1)}
  .tab-btn{font-size:.72rem;padding:var(--sp-2) var(--sp-3)}
  .step-card{padding:var(--sp-4) var(--sp-5)}
  .stat-grid.cols-4,.stat-grid.cols-3,.stat-grid.cols-2{grid-template-columns:1fr}
  .stat-card{padding:var(--sp-5) var(--sp-4)}
  .flowchart{padding:var(--sp-3) 0}
  .flow-step{padding:var(--sp-3) var(--sp-4);font-size:.82rem}
  .gantt-header{grid-template-columns:160px 1fr}
  .gantt-row{grid-template-columns:160px 1fr}
  .risk-cell{width:40px;height:40px;font-size:.6rem}
  .risk-axis-y span{height:40px}
  .data-table th,.data-table td{padding:var(--sp-2) var(--sp-3);font-size:.75rem}
}
