/* Whistleblowing — tema Ordito Consulting */
@font-face{font-family:'Manrope';src:url('../vendor/fonts/manrope.woff2') format('woff2');font-weight:200 800;font-display:swap;}
@font-face{font-family:'Inter';src:url('../vendor/fonts/inter.woff2') format('woff2');font-weight:100 900;font-display:swap;}

:root{
  --navy-950:#081226; --navy-900:#0b1c3a; --navy-800:#12284f;
  --brand:#1c63d6; --brand-2:#2f7fea; --brand-3:#5aa4f2;
  --ink-900:#10151d; --ink-700:#3c4552; --ink-500:#69727e; --ink-300:#a7afb9;
  --surface:#f5f6f8; --tint:#eef2fb; --tint-line:#dde5f7; --line:#e2e6ec;
  --ok:#1f9d6a; --warn:#e0a31a; --danger:#d9453a;
  --radius:16px; --radius-sm:10px;
  --shadow:0 1px 2px rgba(11,28,58,.04),0 8px 24px rgba(11,28,58,.06);
  --shadow-lg:0 20px 50px rgba(11,28,58,.12);
  --font-head:'Manrope','Inter',system-ui,sans-serif; --font-body:'Inter',system-ui,sans-serif;
  --bs-primary:var(--brand); --bs-primary-rgb:28,99,214; --bs-body-font-family:var(--font-body);
  --bs-body-color:var(--ink-700); --bs-link-color:var(--brand); --bs-link-hover-color:var(--navy-900);
  --bs-border-color:var(--line); --bs-border-radius:var(--radius-sm);
}
body{font-family:var(--font-body);color:var(--ink-700);background:#fff;-webkit-font-smoothing:antialiased;}
h1,h2,h3,h4,h5,.h1,.h2,.h3,.h4,.h5{font-family:var(--font-head);color:var(--navy-900);font-weight:800;letter-spacing:-.015em;}
a{text-decoration:none;}
.eyebrow{display:inline-block;font-family:var(--font-head);font-weight:700;font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;color:var(--brand);}
.text-ink{color:var(--ink-500)!important;}
.text-navy{color:var(--navy-900)!important;}
.fw-800{font-weight:800;}

/* Buttons */
.btn{font-family:var(--font-head);font-weight:700;border-radius:var(--radius-sm);padding:.65rem 1.2rem;letter-spacing:.005em;}
.btn-lg{padding:.9rem 1.6rem;font-size:1.02rem;}
.btn-sm{padding:.35rem .75rem;}
.btn-primary{--bs-btn-bg:var(--brand);--bs-btn-border-color:var(--brand);--bs-btn-hover-bg:#1753b5;--bs-btn-hover-border-color:#1753b5;--bs-btn-active-bg:#134596;--bs-btn-disabled-bg:var(--brand);--bs-btn-disabled-border-color:var(--brand);}
.btn-navy{--bs-btn-color:#fff;--bs-btn-bg:var(--navy-900);--bs-btn-border-color:var(--navy-900);--bs-btn-hover-color:#fff;--bs-btn-hover-bg:var(--navy-800);--bs-btn-hover-border-color:var(--navy-800);--bs-btn-active-bg:var(--navy-950);--bs-btn-active-color:#fff;}
.btn-soft{--bs-btn-color:var(--brand);--bs-btn-bg:var(--tint);--bs-btn-border-color:var(--tint);--bs-btn-hover-color:#fff;--bs-btn-hover-bg:var(--brand);--bs-btn-hover-border-color:var(--brand);}
.btn-outline-primary{--bs-btn-color:var(--brand);--bs-btn-border-color:var(--tint-line);--bs-btn-hover-bg:var(--brand);--bs-btn-hover-border-color:var(--brand);}
.btn-icon{width:36px;height:36px;padding:0;display:inline-flex;align-items:center;justify-content:center;}

/* Forms */
.form-label{font-weight:600;color:var(--navy-900);font-size:.92rem;margin-bottom:.4rem;}
.form-control,.form-select{border-radius:var(--radius-sm);border:1.5px solid var(--line);padding:.7rem .9rem;background-color:#fff;}
.form-control:focus,.form-select:focus{border-color:var(--brand-2);box-shadow:0 0 0 .25rem rgba(47,127,234,.15);}
.form-text{color:var(--ink-500);}
.form-check-input:checked{background-color:var(--brand);border-color:var(--brand);}
.form-switch{padding-left:3.4em;min-height:1.6em;}
.form-switch .form-check-input{width:2.6em;height:1.4em;margin-left:-3.4em;margin-top:.05em;cursor:pointer;}
.form-switch.d-inline-block{padding-left:0;}
.form-switch.d-inline-block .form-check-input{margin-left:0;}
textarea.form-control{min-height:140px;}
.req{color:var(--danger);}

/* Cards */
.wb-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);}
.wb-card-body{padding:1.75rem;}
@media (max-width:576px){.wb-card-body{padding:1.25rem;}}

/* ============ Public ============ */
.wb-header{position:sticky;top:0;z-index:1030;background:rgba(255,255,255,.88);backdrop-filter:saturate(180%) blur(12px);border-bottom:1px solid var(--line);}
.wb-header .navbar{padding:.7rem 0;}
.wb-brand img{height:44px;width:auto;}
.wb-brand .wb-brand-sub{font-family:var(--font-head);font-weight:700;font-size:.8rem;color:var(--ink-500);border-left:1.5px solid var(--line);padding-left:.8rem;margin-left:.8rem;line-height:1.1;}
.wb-nav .nav-link{font-family:var(--font-head);font-weight:600;color:var(--ink-700);padding:.5rem .85rem!important;border-radius:8px;font-size:.93rem;}
.wb-nav .nav-link:hover,.wb-nav .nav-link.active{color:var(--brand);background:var(--tint);}
.lang-switch{display:inline-flex;background:var(--surface);border-radius:999px;padding:3px;border:1px solid var(--line);}
.lang-switch a{font-family:var(--font-head);font-weight:700;font-size:.75rem;padding:.3rem .65rem;border-radius:999px;color:var(--ink-500);}
.lang-switch a.active{background:#fff;color:var(--navy-900);box-shadow:0 1px 3px rgba(0,0,0,.08);}

.hero{position:relative;overflow:hidden;background:radial-gradient(1200px 600px at 85% 20%,rgba(47,127,234,.35),transparent 60%),linear-gradient(160deg,var(--navy-950),var(--navy-900) 55%,#0f2b5c);color:#fff;padding:96px 0 120px;}
.hero::after{content:"";position:absolute;inset:auto 0 -1px 0;height:80px;background:linear-gradient(to bottom right,transparent 49.5%,#fff 50%);}
.hero-pattern{position:absolute;right:-120px;top:50%;transform:translateY(-50%);width:680px;max-width:70vw;opacity:.55;pointer-events:none;animation:spin 120s linear infinite;}
@keyframes spin{to{transform:translateY(-50%) rotate(360deg);}}
@media (prefers-reduced-motion:reduce){.hero-pattern{animation:none;}}
.hero h1{color:#fff;font-size:clamp(2.2rem,5vw,3.6rem);line-height:1.05;}
.hero .lead{color:rgba(255,255,255,.78);font-size:1.12rem;max-width:620px;}
.hero .eyebrow{color:var(--brand-3);}
.hero-actions{position:relative;z-index:2;margin-top:-72px;}
.cta-card{display:block;height:100%;padding:2rem;border-radius:20px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow-lg);transition:transform .25s,box-shadow .25s,border-color .25s;color:var(--ink-700);}
.cta-card:hover{transform:translateY(-4px);border-color:var(--tint-line);color:var(--ink-700);}
.cta-card .cta-icon{width:56px;height:56px;border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:1.6rem;margin-bottom:1.1rem;}
.cta-card.primary .cta-icon{background:linear-gradient(135deg,var(--brand),var(--brand-3));color:#fff;}
.cta-card.dark .cta-icon{background:var(--navy-900);color:#fff;}
.cta-card h3{font-size:1.4rem;margin-bottom:.4rem;}
.cta-card .cta-go{font-family:var(--font-head);font-weight:700;color:var(--brand);margin-top:1rem;display:inline-flex;align-items:center;gap:.4rem;}
.cta-card:hover .cta-go i{transform:translateX(4px);}
.cta-go i{transition:transform .2s;}

.feature{display:flex;gap:1rem;}
.feature .f-icon{flex:0 0 46px;height:46px;border-radius:12px;background:var(--tint);color:var(--brand);display:flex;align-items:center;justify-content:center;font-size:1.3rem;}
.feature h5{font-size:1.02rem;margin-bottom:.25rem;}
.feature p{font-size:.93rem;color:var(--ink-500);margin:0;}

.steps{counter-reset:s;}
.step{position:relative;padding:1.5rem 1.5rem 1.5rem 4.4rem;background:var(--surface);border-radius:var(--radius);height:100%;}
.step::before{counter-increment:s;content:counter(s,decimal-leading-zero);position:absolute;left:1.4rem;top:1.35rem;font-family:var(--font-head);font-weight:800;font-size:1.5rem;color:var(--brand);}
.step h5{font-size:1.05rem;}
.step p{margin:0;color:var(--ink-500);font-size:.93rem;}

.section{padding:72px 0;}
.page-head{background:linear-gradient(160deg,var(--navy-950),var(--navy-900));color:#fff;padding:56px 0 88px;position:relative;overflow:hidden;}
.page-head h1{color:#fff;font-size:clamp(1.8rem,4vw,2.6rem);margin:0;}
.page-head p{color:rgba(255,255,255,.75);margin:.6rem 0 0;max-width:680px;}
.page-head .hero-pattern{width:460px;right:-140px;opacity:.4;}
.page-body{margin-top:-56px;position:relative;z-index:2;padding-bottom:72px;}
.prose{font-size:1.02rem;line-height:1.75;}

/* Scelte a card (radio) */
.choice{position:relative;display:block;cursor:pointer;height:100%;}
.choice input{position:absolute;opacity:0;pointer-events:none;}
.choice .choice-box{display:block;height:100%;border:1.5px solid var(--line);border-radius:14px;padding:1.2rem 1.25rem 1.2rem 3.4rem;background:#fff;transition:border-color .15s,background .15s,box-shadow .15s;position:relative;}
.choice .choice-box::before{content:"";position:absolute;left:1.2rem;top:1.35rem;width:20px;height:20px;border-radius:50%;border:2px solid var(--ink-300);background:#fff;transition:.15s;}
.choice input:checked + .choice-box{border-color:var(--brand);background:var(--tint);box-shadow:0 0 0 4px rgba(28,99,214,.08);}
.choice input:checked + .choice-box::before{border-color:var(--brand);background:var(--brand);box-shadow:inset 0 0 0 4px #fff;}
.choice input:focus-visible + .choice-box{outline:3px solid rgba(47,127,234,.4);outline-offset:2px;}
.choice .choice-title{font-family:var(--font-head);font-weight:800;color:var(--navy-900);display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;}
.choice .choice-desc{font-size:.88rem;color:var(--ink-500);margin-top:.3rem;line-height:1.55;}
.pill{display:inline-block;font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;background:var(--brand);color:#fff;padding:.18rem .5rem;border-radius:999px;}

.form-step{display:flex;align-items:center;gap:.75rem;margin-bottom:1.1rem;}
.form-step .num{width:32px;height:32px;border-radius:50%;background:var(--navy-900);color:#fff;font-family:var(--font-head);font-weight:800;display:flex;align-items:center;justify-content:center;font-size:.9rem;flex:0 0 32px;}
.form-step h2{font-size:1.2rem;margin:0;}
.form-divider{height:1px;background:var(--line);margin:2rem 0;}

/* Dropzone */
.dropzone{border:2px dashed var(--tint-line);border-radius:14px;background:var(--surface);padding:1.6rem;text-align:center;cursor:pointer;transition:.15s;color:var(--ink-500);}
.dropzone:hover,.dropzone.drag{border-color:var(--brand-2);background:var(--tint);color:var(--brand);}
.dropzone i{font-size:1.8rem;display:block;margin-bottom:.35rem;color:var(--brand);}
.file-list{list-style:none;padding:0;margin:.75rem 0 0;}
.file-list li{display:flex;align-items:center;gap:.6rem;padding:.5rem .75rem;border:1px solid var(--line);border-radius:10px;margin-bottom:.4rem;font-size:.9rem;background:#fff;}
.file-list li .size{color:var(--ink-300);margin-left:auto;font-size:.8rem;}
.file-list li button{border:0;background:none;color:var(--ink-300);padding:0 .2rem;}
.file-list li button:hover{color:var(--danger);}

/* Voice recorder */
.recorder{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;background:var(--surface);border-radius:14px;padding:1rem 1.2rem;}
.rec-btn{width:52px;height:52px;border-radius:50%;border:0;background:var(--navy-900);color:#fff;font-size:1.3rem;display:flex;align-items:center;justify-content:center;transition:.2s;flex:0 0 52px;}
.rec-btn:hover{background:var(--brand);}
.rec-btn.recording{background:var(--danger);animation:pulse 1.4s infinite;}
@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(217,69,58,.5);}70%{box-shadow:0 0 0 14px rgba(217,69,58,0);}100%{box-shadow:0 0 0 0 rgba(217,69,58,0);}}
.rec-time{font-family:var(--font-head);font-weight:800;font-variant-numeric:tabular-nums;color:var(--navy-900);min-width:52px;}
.recorder audio{height:40px;max-width:100%;}

/* Passkey */
.passkey-box{background:linear-gradient(160deg,var(--navy-950),var(--navy-900));color:#fff;border-radius:20px;padding:2rem;position:relative;overflow:hidden;}
.passkey-box .lbl{font-size:.75rem;text-transform:uppercase;letter-spacing:.1em;color:var(--brand-3);font-weight:700;font-family:var(--font-head);}
.passkey-box .val{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:clamp(1rem,2.6vw,1.45rem);font-weight:600;letter-spacing:.06em;word-break:break-all;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12);border-radius:12px;padding:.8rem 1rem;display:flex;align-items:center;justify-content:space-between;gap:.75rem;}
.passkey-box .val button{flex:0 0 auto;}
.btn-glass{--bs-btn-color:#fff;--bs-btn-bg:rgba(255,255,255,.1);--bs-btn-border-color:rgba(255,255,255,.18);--bs-btn-hover-color:#fff;--bs-btn-hover-bg:rgba(255,255,255,.2);--bs-btn-hover-border-color:rgba(255,255,255,.3);--bs-btn-active-bg:rgba(255,255,255,.25);--bs-btn-active-color:#fff;}
.keydrop{border:2px dashed var(--tint-line);border-radius:18px;background:var(--surface);padding:2.4rem 1.5rem;text-align:center;cursor:pointer;transition:.2s;}
.keydrop:hover,.keydrop.drag{border-color:var(--brand);background:var(--tint);}
.keydrop.loaded{border-style:solid;border-color:var(--ok);background:#effaf5;}
.keydrop .kd-icon{width:64px;height:64px;border-radius:18px;margin:0 auto 1rem;background:#fff;box-shadow:var(--shadow);display:flex;align-items:center;justify-content:center;font-size:1.8rem;color:var(--brand);}
.keydrop.loaded .kd-icon{color:var(--ok);}
.or-sep{display:flex;align-items:center;gap:1rem;color:var(--ink-300);font-size:.82rem;text-transform:uppercase;letter-spacing:.08em;margin:1.5rem 0;}
.or-sep::before,.or-sep::after{content:"";flex:1;height:1px;background:var(--line);}
.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.04em;}

/* Timeline stato */
.tl{display:flex;justify-content:space-between;position:relative;margin:.5rem 0 0;}
.tl::before{content:"";position:absolute;left:8%;right:8%;top:17px;height:3px;background:var(--line);border-radius:3px;}
.tl .tl-fill{position:absolute;left:8%;top:17px;height:3px;background:var(--brand);border-radius:3px;transition:width .6s;}
.tl-step{position:relative;text-align:center;flex:1;z-index:1;}
.tl-dot{width:36px;height:36px;border-radius:50%;margin:0 auto .5rem;background:#fff;border:3px solid var(--line);display:flex;align-items:center;justify-content:center;color:var(--ink-300);}
.tl-step.done .tl-dot{background:var(--brand);border-color:var(--brand);color:#fff;}
.tl-step .tl-lbl{font-family:var(--font-head);font-weight:700;font-size:.85rem;color:var(--navy-900);}
.tl-step .tl-date{font-size:.78rem;color:var(--ink-500);}

/* Chat */
.chat{display:flex;flex-direction:column;gap:1rem;}
.msg{max-width:85%;}
.msg .bubble{padding:.85rem 1.1rem;border-radius:16px;background:var(--surface);white-space:normal;word-wrap:break-word;line-height:1.55;}
.msg .meta{font-size:.76rem;color:var(--ink-500);margin-bottom:.3rem;display:flex;gap:.5rem;align-items:center;}
.msg.me{align-self:flex-end;}
.msg.me .bubble{background:var(--brand);color:#fff;border-bottom-right-radius:4px;}
.msg.me .meta{justify-content:flex-end;}
.msg.them .bubble{border-bottom-left-radius:4px;}
.msg.note .bubble{background:#fff8e6;border:1px dashed #f0c96b;}
.msg.system{align-self:center;max-width:100%;}
.msg.system .bubble{background:transparent;border:1px solid var(--line);font-size:.85rem;color:var(--ink-500);border-radius:999px;padding:.4rem 1rem;text-align:center;}
.msg .att-chip{display:inline-flex;align-items:center;gap:.35rem;background:rgba(255,255,255,.2);border-radius:8px;padding:.25rem .55rem;font-size:.82rem;margin:.4rem .3rem 0 0;color:inherit;}
.msg.them .att-chip,.msg.note .att-chip{background:#fff;border:1px solid var(--line);}

/* Badges */
.badge{font-family:var(--font-head);font-weight:700;padding:.42em .75em;border-radius:999px;font-size:.74rem;letter-spacing:.02em;}
.wb-badge-pending{background:#fff4dc;color:#9a6a00;}
.wb-badge-progress{background:var(--tint);color:var(--brand);}
.wb-badge-done{background:#e3f6ee;color:#157a52;}
.badge-soft{background:var(--surface);color:var(--ink-700);border:1px solid var(--line);}

/* Footer */
.wb-footer{background:var(--navy-950);color:rgba(255,255,255,.6);padding:40px 0;font-size:.88rem;}
.wb-footer a{color:rgba(255,255,255,.8);}
.wb-footer a:hover{color:#fff;}
.wb-footer .foot-logo{height:34px;filter:brightness(0) invert(1);opacity:.9;}

/* Accordion FAQ */
.accordion{--bs-accordion-border-color:var(--line);--bs-accordion-active-bg:var(--tint);--bs-accordion-active-color:var(--navy-900);--bs-accordion-btn-focus-box-shadow:0 0 0 .25rem rgba(47,127,234,.15);--bs-accordion-border-radius:14px;--bs-accordion-inner-border-radius:14px;}
.accordion-button{font-family:var(--font-head);font-weight:700;color:var(--navy-900);padding:1.15rem 1.35rem;}
.accordion-item{margin-bottom:.6rem;border-radius:14px!important;overflow:hidden;border:1px solid var(--line)!important;}
.accordion-body{color:var(--ink-700);line-height:1.7;}

/* Auth */
.auth-wrap{min-height:calc(100vh - 71px);display:grid;grid-template-columns:1.05fr 1fr;}
.auth-side{background:linear-gradient(160deg,var(--navy-950),var(--navy-900) 60%,#133a7a);color:#fff;position:relative;overflow:hidden;display:flex;align-items:flex-end;padding:3rem;}
.auth-side .hero-pattern{right:-160px;width:640px;}
.auth-side h2{color:#fff;font-size:2rem;position:relative;}
.auth-side p{color:rgba(255,255,255,.72);position:relative;max-width:420px;}
.auth-main{display:flex;align-items:center;justify-content:center;padding:3rem 1.5rem;}
.auth-box{width:100%;max-width:400px;}
@media (max-width:900px){.auth-wrap{grid-template-columns:1fr;}.auth-side{display:none;}}

/* ============ Admin ============ */
.admin-body{background:var(--surface);}
.sidebar{position:fixed;inset:0 auto 0 0;width:264px;background:var(--navy-950);color:rgba(255,255,255,.7);display:flex;flex-direction:column;z-index:1040;transition:transform .25s;}
.sidebar .sb-brand{padding:1.35rem 1.4rem;border-bottom:1px solid rgba(255,255,255,.08);display:flex;align-items:center;gap:.75rem;}
.sidebar .sb-brand img{height:38px;filter:brightness(0) invert(1);}
.sidebar .sb-brand span{font-family:var(--font-head);font-weight:700;font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--brand-3);line-height:1.2;}
.sidebar nav{padding:1rem .8rem;flex:1;overflow-y:auto;}
.sidebar .sb-label{font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.35);padding:1rem .8rem .4rem;font-weight:700;}
.sidebar a.sb-link{display:flex;align-items:center;gap:.8rem;padding:.65rem .85rem;border-radius:10px;color:rgba(255,255,255,.72);font-family:var(--font-head);font-weight:600;font-size:.93rem;margin-bottom:2px;}
.sidebar a.sb-link i{font-size:1.1rem;width:20px;text-align:center;}
.sidebar a.sb-link:hover{background:rgba(255,255,255,.06);color:#fff;}
.sidebar a.sb-link.active{background:linear-gradient(90deg,var(--brand),var(--brand-2));color:#fff;box-shadow:0 6px 18px rgba(28,99,214,.35);}
.sidebar .sb-link .count{margin-left:auto;background:var(--danger);color:#fff;border-radius:999px;font-size:.7rem;padding:.1rem .45rem;}
.sidebar .sb-user{padding:1rem 1.2rem;border-top:1px solid rgba(255,255,255,.08);display:flex;align-items:center;gap:.75rem;}
.avatar{width:38px;height:38px;border-radius:50%;background:linear-gradient(135deg,var(--brand),var(--brand-3));color:#fff;font-family:var(--font-head);font-weight:800;display:flex;align-items:center;justify-content:center;font-size:.9rem;flex:0 0 38px;}
.sb-user .who{line-height:1.2;min-width:0;}
.sb-user .who strong{color:#fff;font-size:.88rem;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.sb-user .who small{color:rgba(255,255,255,.45);font-size:.75rem;}
.sb-user form button{background:none;border:0;color:rgba(255,255,255,.5);font-size:1.15rem;}
.sb-user form button:hover{color:#fff;}
.main{margin-left:264px;min-height:100vh;}
.topbar{height:68px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;padding:0 2rem;gap:1rem;position:sticky;top:0;z-index:1020;}
.topbar h1{font-size:1.2rem;margin:0;}
.topbar .crumb{font-size:.8rem;color:var(--ink-500);}
.content{padding:2rem;}
.sb-toggle{display:none;}
.sb-backdrop{display:none;}
@media (max-width:992px){
  .sidebar{transform:translateX(-100%);}
  .sidebar.open{transform:none;}
  .sb-backdrop.open{display:block;position:fixed;inset:0;background:rgba(8,18,38,.45);z-index:1035;}
  .main{margin-left:0;}
  .sb-toggle{display:inline-flex;}
  .content{padding:1.25rem;}
  .topbar{padding:0 1.25rem;}
}

.stat{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:1.25rem 1.3rem;height:100%;position:relative;overflow:hidden;box-shadow:var(--shadow);}
.stat .s-icon{width:42px;height:42px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.2rem;margin-bottom:.9rem;}
.stat .s-val{font-family:var(--font-head);font-weight:800;font-size:2rem;color:var(--navy-900);line-height:1;}
.stat .s-lbl{font-size:.82rem;color:var(--ink-500);margin-top:.35rem;font-weight:500;}
.stat.navy{background:linear-gradient(150deg,var(--navy-950),var(--navy-900));border-color:var(--navy-900);}
.stat.navy .s-val{color:#fff;}.stat.navy .s-lbl{color:rgba(255,255,255,.65);}
.stat.navy .s-icon{background:rgba(255,255,255,.1);color:#fff;}
.s-blue .s-icon{background:var(--tint);color:var(--brand);}
.s-amber .s-icon{background:#fff4dc;color:#b07c00;}
.s-green .s-icon{background:#e3f6ee;color:var(--ok);}
.s-orange .s-icon{background:#fff0e0;color:#d9771a;}
.s-red .s-icon{background:#fde9e7;color:var(--danger);}
.s-red .s-val{color:var(--danger);}
.stat .s-link{position:absolute;inset:0;}

.table-wb{margin:0;}
.table-wb thead th{font-family:var(--font-head);font-size:.74rem;text-transform:uppercase;letter-spacing:.07em;color:var(--ink-500);font-weight:700;background:var(--surface);border-bottom:1px solid var(--line);padding:.85rem 1rem;white-space:nowrap;}
.table-wb td{padding:.9rem 1rem;vertical-align:middle;border-color:var(--line);}
.table-wb tbody tr:hover{background:#fafbfd;}
.table-wb tr.row-link{cursor:pointer;}
.table-wb .unread-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--danger);margin-right:.35rem;}
.card-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.15rem 1.5rem;border-bottom:1px solid var(--line);flex-wrap:wrap;}
.card-head h2,.card-head h3{font-size:1.05rem;margin:0;}
.chip{display:inline-flex;align-items:center;gap:.3rem;background:var(--tint);color:var(--brand);border-radius:999px;padding:.2rem .6rem;font-size:.78rem;font-weight:600;margin:.1rem;}
.empty{text-align:center;padding:3rem 1rem;color:var(--ink-500);}
.empty i{font-size:2.4rem;color:var(--ink-300);display:block;margin-bottom:.6rem;}
.alert{border-radius:12px;border:0;}
.alert-denied{background:#fde9e7;color:#9c2a21;padding:1.5rem;display:flex;gap:1rem;align-items:flex-start;}
.alert-denied i{font-size:1.8rem;}
.kv{display:grid;grid-template-columns:150px 1fr;gap:.55rem 1rem;font-size:.93rem;}
.kv dt{color:var(--ink-500);font-weight:500;}
.kv dd{margin:0;color:var(--ink-900);font-weight:500;}
.identity-locked{background:repeating-linear-gradient(-45deg,var(--surface),var(--surface) 10px,#fff 10px,#fff 20px);border:1px dashed var(--ink-300);border-radius:12px;padding:1.2rem;text-align:center;}
.nav-pills-wb .nav-link{font-family:var(--font-head);font-weight:700;color:var(--ink-500);border-radius:10px;padding:.6rem 1rem;}
.nav-pills-wb .nav-link.active{background:var(--navy-900);color:#fff;}
.chart-box{position:relative;height:300px;}
.modal-content{border-radius:var(--radius);border:0;box-shadow:var(--shadow-lg);}
.modal-header{border-bottom:1px solid var(--line);padding:1.2rem 1.5rem;}
.modal-body{padding:1.5rem;}
.modal-footer{border-top:1px solid var(--line);}
.color-input{width:56px;height:44px;padding:4px;border-radius:10px;}
.lang-tag{display:inline-block;font-size:.66rem;font-weight:800;background:var(--navy-900);color:#fff;border-radius:4px;padding:.05rem .35rem;margin-left:.35rem;vertical-align:middle;letter-spacing:.05em;}

@media print{
  .wb-header,.wb-footer,.no-print{display:none!important;}
  .passkey-box{background:#fff!important;color:#000!important;border:2px solid #000;}
  .passkey-box .val{background:#fff!important;border:1px solid #000;color:#000;}
  .page-head{background:#fff!important;color:#000;padding:0;}
  .page-head h1{color:#000;}
}
