:root{
  --kpi-bg:#f4f7fb;
  --kpi-surface:#ffffff;
  --kpi-surface-2:#f8fafc;
  --kpi-text:#172033;
  --kpi-muted:#6f7b91;
  --kpi-line:#e4eaf2;
  --kpi-primary:#2563eb;
  --kpi-primary-dark:#1d4ed8;
  --kpi-primary-soft:#eaf1ff;
  --kpi-navy:#12233f;
  --kpi-success:#159667;
  --kpi-warning:#c27a17;
  --kpi-danger:#dc4c57;
  --kpi-radius:18px;
  --kpi-radius-sm:12px;
  --kpi-shadow:0 10px 28px rgba(30,54,92,.07);
  --kpi-shadow-hover:0 14px 36px rgba(30,54,92,.11);
}
*{box-sizing:border-box}
html{background:var(--kpi-bg)}
body{background:var(--kpi-bg);color:var(--kpi-text);font-family:Inter,"Segoe UI",Roboto,Arial,sans-serif;letter-spacing:-.005em}
a{transition:color .18s ease,background .18s ease,border-color .18s ease,transform .18s ease,box-shadow .18s ease}

/* Top navigation */
.kpi-topbar{min-height:66px;background:rgba(18,35,63,.97)!important;border-bottom:1px solid rgba(255,255,255,.08);box-shadow:0 5px 20px rgba(18,35,63,.13);backdrop-filter:blur(12px)}
.kpi-topbar .container-fluid{padding-left:22px;padding-right:22px}
.navbar-brand{letter-spacing:.01em}
.brand-logo{width:39px;height:39px;object-fit:contain;background:#fff;border-radius:12px;padding:4px;box-shadow:0 4px 14px rgba(0,0,0,.12)}
.brand-fallback{display:grid;place-items:center;width:39px;height:39px;border-radius:12px;background:linear-gradient(145deg,#fff,#eaf1ff);color:var(--kpi-primary);font-weight:900;box-shadow:0 4px 14px rgba(0,0,0,.12)}
.brand-title{font-size:1.05rem;font-weight:800;color:#fff;line-height:1.1}
.brand-subtitle{font-size:.69rem;color:#aebbd0;font-weight:500;line-height:1.1;margin-top:2px}
.user-chip{display:flex;align-items:center;gap:10px;color:#fff;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.09);border-radius:13px;padding:6px 7px 6px 11px}
.user-chip-meta{line-height:1.18;text-align:right}
.user-chip-name{font-size:.78rem;font-weight:700;max-width:220px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.user-chip-role{font-size:.67rem;color:#aebbd0;margin-top:2px}
.logout-btn{border-radius:9px!important;padding:.35rem .65rem!important;border-color:rgba(255,255,255,.22)!important;background:rgba(255,255,255,.04)}
.logout-btn:hover{background:#fff!important;color:var(--kpi-navy)!important}

/* Topbar message and notification icons */
.top-action-icon{position:relative;width:40px;height:40px;border-radius:12px;background:rgba(255,255,255,.09);display:inline-flex;align-items:center;justify-content:center;text-decoration:none;border:1px solid rgba(255,255,255,.11);box-shadow:none}
.top-action-icon:hover{background:rgba(255,255,255,.17);transform:translateY(-1px)}
.top-action-icon img{width:22px;height:22px;object-fit:contain;display:block;filter:drop-shadow(0 1px 1px rgba(0,0,0,.08))}
.top-action-badge{position:absolute;right:-5px;top:-5px;min-width:19px;height:19px;padding:0 5px;border-radius:999px;background:var(--kpi-danger);color:#fff;font-size:10px;font-weight:800;display:flex;align-items:center;justify-content:center;border:2px solid var(--kpi-navy);line-height:1}

/* Sidebar */
.sidebar{min-height:calc(100vh - 66px);position:sticky;top:66px;height:calc(100vh - 66px);overflow:auto;background:#fff!important;border-right:1px solid var(--kpi-line)!important;padding:0!important}
.sidebar-inner{padding:20px 14px 28px}
.sidebar-section-title{font-size:.68rem;text-transform:uppercase;letter-spacing:.09em;color:#98a3b5;font-weight:800;padding:10px 12px 6px}
.sidebar .nav{gap:4px!important}
.sidebar .nav-link{position:relative;color:#4f5d73;border-radius:11px;padding:10px 12px;font-size:.87rem;font-weight:600;line-height:1.28;border:1px solid transparent}
.sidebar .nav-link:hover{background:#f4f7fc;color:var(--kpi-primary);transform:translateX(1px)}
.sidebar .nav-link.active{background:var(--kpi-primary-soft);color:var(--kpi-primary);border-color:#dbe7ff;box-shadow:inset 3px 0 0 var(--kpi-primary)}
.sidebar .nav-link.active::after{content:"";position:absolute;right:10px;top:50%;width:6px;height:6px;border-radius:50%;background:var(--kpi-primary);transform:translateY(-50%)}
.sidebar hr{border-color:#edf1f6;opacity:1;margin:14px 6px 8px}
.nav-mini-icon{width:19px;height:19px;object-fit:contain;flex:0 0 auto}
.build-version{font-size:10px;color:#a1aabd;text-align:center;padding-top:12px}
.offcanvas-header{border-bottom:1px solid var(--kpi-line)}

/* Main content */
main{min-height:calc(100vh - 66px);padding-top:28px!important;padding-bottom:44px!important}
.page-heading{margin-bottom:22px}
.page-heading h1,.page-heading .h3{font-weight:800;letter-spacing:-.025em;color:#18243a}
.text-secondary{color:var(--kpi-muted)!important}

/* Cards */
.card{border:1px solid var(--kpi-line);border-radius:var(--kpi-radius);box-shadow:var(--kpi-shadow);overflow:hidden;background:var(--kpi-surface)}
.card:hover.card-hover{box-shadow:var(--kpi-shadow-hover);transform:translateY(-1px)}
.card-header{background:#fff;border-bottom:1px solid #edf1f6;padding:15px 18px;color:#25324a}
.card-body{padding:20px}
.metric-card{position:relative;overflow:hidden;min-height:118px}
.metric-card::after{content:"";position:absolute;width:78px;height:78px;border-radius:50%;right:-28px;top:-28px;background:var(--metric-soft,#edf3ff)}
.metric-card .card-body{position:relative;z-index:1}
.metric-label{font-size:.75rem;color:var(--kpi-muted);font-weight:700;margin-bottom:10px}
.metric-value{font-size:1.85rem;font-weight:850;line-height:1;color:#1b2941;letter-spacing:-.035em}
.metric-line{width:28px;height:4px;border-radius:999px;background:var(--metric-accent,var(--kpi-primary));margin-top:14px}
.metric-blue{--metric-accent:#2563eb;--metric-soft:#e8f0ff}
.metric-green{--metric-accent:#159667;--metric-soft:#e6f7f0}
.metric-amber{--metric-accent:#c27a17;--metric-soft:#fff4df}
.metric-red{--metric-accent:#dc4c57;--metric-soft:#ffebee}
.metric-violet{--metric-accent:#7656d6;--metric-soft:#f0ebff}

/* Lists */
.list-group-item{border-color:#edf1f6;padding:13px 18px;color:#334158}
.list-group-item-action:hover{background:#f7f9fc;color:var(--kpi-primary)}
.list-number{width:28px;height:28px;border-radius:9px;background:#eef3fb;color:#50617d;display:inline-grid;place-items:center;font-size:.74rem;font-weight:800;margin-right:9px;flex:0 0 auto}
.module-list-number{background:var(--kpi-primary-soft);color:var(--kpi-primary)}

/* Buttons and controls */
.btn{border-radius:11px;font-weight:700;transition:.18s ease}
.btn-primary{background:var(--kpi-primary);border-color:var(--kpi-primary)}
.btn-primary:hover{background:var(--kpi-primary-dark);border-color:var(--kpi-primary-dark);transform:translateY(-1px);box-shadow:0 7px 18px rgba(37,99,235,.18)}
.btn-outline-primary{color:var(--kpi-primary);border-color:#bfd0f7}
.btn-outline-primary:hover{background:var(--kpi-primary-soft);color:var(--kpi-primary-dark);border-color:#a9c1f4}
.form-control,.form-select{border-color:#dce3ed;border-radius:11px;min-height:42px;color:#28364e;background-color:#fff}
.form-control:focus,.form-select:focus{border-color:#8eb1ff;box-shadow:0 0 0 .22rem rgba(37,99,235,.10)}
.form-label{font-size:.8rem;font-weight:700;color:#4a5870}
.input-group-text{border-color:#dce3ed;background:#f7f9fc}

/* Tables */
.table{--bs-table-bg:transparent;--bs-table-hover-bg:#f7f9fc;color:#314057}
.table>:not(caption)>*>*{padding:.83rem .9rem;border-bottom-color:#edf1f6}
.table thead th{font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;color:#7f8aa0;background:#f8fafc;border-bottom-color:#e6ebf2;font-weight:800;white-space:nowrap}
.table tbody tr:last-child td{border-bottom:0}
.table a{color:#285fbf;text-decoration:none}
.table a:hover{color:#174ba9}

/* Badges, alerts, progress */
.badge{font-weight:750;letter-spacing:.01em}
.alert{border-radius:13px;border-width:1px;box-shadow:0 6px 18px rgba(30,54,92,.04)}
.progress{height:20px;border-radius:999px;background:#edf1f6;overflow:hidden}
.progress-bar{border-radius:999px;background:linear-gradient(90deg,#2c6cf3,#4c86f7);font-size:.68rem;font-weight:800}

/* Charts */
.chart-wrap{height:430px;padding:4px}
.chat-box{height:55vh;overflow:auto}

/* Login / registration */
.auth-wrap{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at 12% 12%,rgba(37,99,235,.10),transparent 33%),radial-gradient(circle at 88% 88%,rgba(21,150,103,.07),transparent 28%),#f4f7fb;padding:28px}
.auth-card{width:min(430px,100%);border:1px solid rgba(218,226,238,.9);box-shadow:0 22px 60px rgba(30,54,92,.12)}
.auth-card.wide{width:min(840px,100%)}
.auth-card .card-body{padding:34px!important}
.auth-card h2{letter-spacing:-.035em;color:#16243c}
.login-logo{width:92px;height:92px;object-fit:contain;filter:drop-shadow(0 8px 18px rgba(30,54,92,.12))}
.login-logo-placeholder{width:92px;height:92px;border-radius:24px;background:linear-gradient(145deg,#2b6ef2,#1d4ed8);color:#fff;display:grid;place-items:center;font-size:40px;font-weight:900;margin-left:auto;margin-right:auto;box-shadow:0 12px 28px rgba(37,99,235,.24)}
.auth-system-name{font-size:.78rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#8290a6;margin-bottom:7px}

/* Logos */
.org-logo-preview{width:64px;height:64px;object-fit:contain;border:1px solid var(--kpi-line);border-radius:14px;background:#fff;padding:5px}
.org-logo-placeholder{width:64px;height:64px;display:grid;place-items:center;border-radius:14px;background:var(--kpi-primary-soft);color:var(--kpi-primary);font-size:28px;font-weight:800;border:1px solid #dbe7ff}
.rank-logo{width:36px;height:36px;object-fit:contain;border-radius:10px;border:1px solid var(--kpi-line);background:#fff;padding:2px}

/* Scientific potential */
.science-card{border:1px solid #dce7f8;background:linear-gradient(180deg,#fff 0%,#fbfdff 100%)}
.science-metric{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:20px;border:1px solid #e4eaf2;border-radius:16px;background:#fff}
.science-percent{font-size:2.15rem;font-weight:850;line-height:1.05;margin:.25rem 0 .4rem;letter-spacing:-.035em}
.science-ring{--p:0;width:92px;height:92px;border-radius:50%;display:grid;place-items:center;flex:0 0 auto;background:conic-gradient(var(--kpi-primary) var(--p),#e9eef5 0);position:relative}
.science-ring:after{content:"";position:absolute;inset:9px;border-radius:50%;background:#fff}
.science-ring span{position:relative;z-index:1;font-weight:850;font-size:1rem}
.science-chart-box{height:250px;border:1px solid #edf0f5;border-radius:14px;padding:12px;background:#fff}
.science-quick-fastapi .fs-3{line-height:1.1}
.science-quick-fastapi>div>div{border-radius:15px!important;background:#fbfcfe!important;border-color:#e4eaf2!important}

/* Toast */
.toast{border:1px solid var(--kpi-line);border-radius:14px;box-shadow:var(--kpi-shadow-hover)}

.title-with-icon{display:flex;align-items:center;gap:10px}.title-with-icon img{width:34px;height:34px;object-fit:contain}

@media(max-width:1199.98px){
  .user-chip-meta{display:none}
}
@media(max-width:991.98px){
  .sidebar{position:fixed;height:100vh;top:0;min-height:100vh;box-shadow:12px 0 36px rgba(18,35,63,.14)}
  main{padding-left:18px!important;padding-right:18px!important}
  .kpi-topbar .container-fluid{padding-left:14px;padding-right:14px}
}
@media(max-width:575.98px){
  .top-action-icon{width:36px;height:36px}.top-action-icon img{width:19px;height:19px}
  .brand-logo,.brand-fallback{width:36px;height:36px}
  .brand-subtitle{display:none}
  .auth-wrap{padding:16px}.auth-card .card-body{padding:25px!important}
  .metric-value{font-size:1.55rem}.metric-card{min-height:105px}
  .science-ring{width:76px;height:76px}.science-percent{font-size:1.8rem}
  .card{border-radius:15px}.card-body{padding:16px}
}

/* Design 3: reliable SVG navigation icons */
.icon-sprite{position:absolute;width:0;height:0;overflow:hidden;pointer-events:none}
.nav-icon{width:19px;height:19px;flex:0 0 19px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;opacity:.88}
.sidebar .nav-link{display:flex;align-items:center;gap:10px;min-height:42px}
.sidebar .nav-link:hover .nav-icon,.sidebar .nav-link.active .nav-icon{opacity:1}
.sidebar .nav-link-badge{padding-right:12px}
.sidebar .nav-link.active.nav-link-badge::after{display:none}
.top-action-icon svg{width:21px;height:21px;fill:none;stroke:#fff;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.logout-icon{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}

/* Module manager and score controls */
.manager-help{background:#f7faff;border:1px solid #deebff;border-radius:14px;padding:14px 16px;color:#52637d}
.field-row,.product-row{padding:10px;border:1px solid #edf1f6;border-radius:13px;background:#fbfcfe}
.product-row+.product-row,.field-row+.field-row{margin-top:8px}
.score-savebar{position:sticky;bottom:12px;z-index:20;display:flex;justify-content:flex-end;pointer-events:none}
.score-savebar .btn{pointer-events:auto;box-shadow:0 12px 26px rgba(37,99,235,.24)}
.number-stepper{display:grid;grid-template-columns:34px minmax(76px,1fr) 34px;align-items:stretch;border:1px solid #dce3ed;border-radius:11px;overflow:hidden;background:#fff;min-height:42px}
.number-stepper input{border:0!important;border-radius:0!important;min-width:0;text-align:center;padding:.35rem .2rem;box-shadow:none!important;-moz-appearance:textfield}
.number-stepper input::-webkit-outer-spin-button,.number-stepper input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.step-btn{border:0;background:#f5f8fc;color:#50617d;font-weight:900;font-size:1.05rem;line-height:1;transition:.15s ease}
.step-btn:hover{background:#eaf1ff;color:var(--kpi-primary)}
.step-btn:active{background:#dfeaff}
.formula-note{font-size:.72rem;color:#7a879a;margin-top:5px;line-height:1.35}
.score-product-table td{vertical-align:middle}
.score-product-table .number-stepper{min-width:128px;min-height:36px;grid-template-columns:30px minmax(64px,1fr) 30px}
.score-product-table .step-btn{font-size:.95rem}
.score-product-table input{min-height:34px!important;font-size:.82rem}
.module-actions{display:flex;gap:6px;justify-content:flex-end;flex-wrap:wrap}
.btn-soft-danger{color:#b4232c;border:1px solid #f0c7cb;background:#fff8f8}
.btn-soft-danger:hover{background:#fff0f1;color:#9f1d25;border-color:#e8aeb4}
.delete-note{font-size:.72rem;color:#8a95a7;margin-top:7px}


/* Design 4: glossy blue sidebar inspired by approved reference */
@media (min-width:992px){
  .kpi-topbar{margin-left:286px;width:calc(100% - 286px);background:rgba(255,255,255,.96)!important;border-bottom:1px solid #e3eaf4;box-shadow:0 5px 24px rgba(30,54,92,.06)}
  .kpi-topbar .navbar-brand{display:none!important}
  .sidebar{position:fixed!important;left:0;top:0!important;width:286px!important;max-width:286px!important;height:100vh!important;min-height:100vh!important;z-index:1040;background:linear-gradient(180deg,#075fc2 0%,#064a9d 44%,#073d82 100%)!important;border-right:0!important;box-shadow:16px 0 38px rgba(8,57,122,.13)}
  main.col-lg-10{margin-left:286px!important;width:calc(100% - 286px)!important;max-width:calc(100% - 286px)!important;flex:0 0 calc(100% - 286px)!important}
  .top-action-icon{background:#fff;border-color:#e2e8f2;box-shadow:0 5px 16px rgba(25,55,95,.06)}
  .top-action-icon:hover{background:#f5f9ff;border-color:#cfe0ff}
  .top-action-icon svg{stroke:#1c3f77}
  .top-action-badge{border-color:#fff}
  .user-chip{color:#152644;background:#f7f9fc;border-color:#e4eaf2}
  .user-chip-role{color:#7c899e}
  .logout-btn{color:#31527e!important;border-color:#d7e0ec!important;background:#fff!important}
  .logout-btn:hover{background:#edf4ff!important;color:#154ea4!important}
}
.sidebar-inner{padding:22px 16px 28px}
.sidebar-brand{display:flex;align-items:center;gap:13px;text-decoration:none;padding:6px 9px 22px;margin-bottom:4px;color:#fff}
.sidebar-brand:hover{color:#fff}
.sidebar-brand>span:last-child{min-width:0}
.sidebar-brand strong{display:block;font-size:1.08rem;line-height:1.1;font-weight:850;letter-spacing:-.02em;color:#fff}
.sidebar-brand small{display:block;margin-top:5px;font-size:.67rem;color:#b8d8ff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sidebar-brand-bars{width:48px;height:44px;display:flex;align-items:flex-end;gap:4px;flex:0 0 48px;padding:5px 4px}
.sidebar-brand-bars i{display:block;width:10px;border-radius:5px 5px 3px 3px;background:linear-gradient(180deg,#d9f2ff 0%,#8fcbff 100%);box-shadow:0 3px 10px rgba(13,112,224,.28)}
.sidebar-brand-bars i:nth-child(1){height:22px}.sidebar-brand-bars i:nth-child(2){height:31px}.sidebar-brand-bars i:nth-child(3){height:39px;background:linear-gradient(180deg,#76c8ff 0%,#2d93f2 100%)}
.sidebar-section-title{color:#91c5ff!important;padding:12px 11px 7px!important;font-size:.64rem!important;letter-spacing:.11em!important}
.sidebar .nav{gap:8px!important}
.sidebar .nav-link{min-height:52px!important;padding:8px 11px!important;border-radius:15px!important;color:#eff7ff!important;font-size:.84rem!important;font-weight:730!important;border:1px solid rgba(105,190,255,.36)!important;background:linear-gradient(180deg,rgba(25,119,221,.34),rgba(4,69,148,.34))!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 7px 18px rgba(0,40,92,.10)!important;gap:10px!important}
.sidebar .nav-link:hover{color:#fff!important;transform:translateX(2px)!important;border-color:rgba(118,207,255,.72)!important;background:linear-gradient(180deg,rgba(29,139,246,.60),rgba(6,83,178,.58))!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.16),0 9px 22px rgba(0,42,101,.20)!important}
.sidebar .nav-link.active{color:#fff!important;border-color:#59c7ff!important;background:linear-gradient(135deg,#0ea5ff 0%,#0878ec 52%,#065ccf 100%)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.28),0 8px 24px rgba(0,116,239,.32),0 0 0 1px rgba(73,196,255,.16)!important}
.sidebar .nav-link.active::after{display:none!important}
.nav-icon-box{width:34px;height:34px;flex:0 0 34px;border-radius:10px;display:grid;place-items:center;background:linear-gradient(145deg,rgba(232,248,255,.26),rgba(83,170,255,.16));border:1px solid rgba(207,239,255,.24);box-shadow:inset 0 1px 0 rgba(255,255,255,.18)}
.nav-icon{width:21px!important;height:21px!important;flex:0 0 21px!important;stroke:#eaf7ff!important;stroke-width:2!important;opacity:1!important;filter:drop-shadow(0 2px 3px rgba(0,42,95,.18))}
.sidebar .nav-link.active .nav-icon-box{background:linear-gradient(145deg,#e8f8ff,#82caff);border-color:#dff5ff;box-shadow:0 4px 12px rgba(0,74,165,.22),inset 0 1px 0 #fff}
.sidebar .nav-link.active .nav-icon{stroke:#075fc7!important}
.sidebar hr{border-color:rgba(174,216,255,.18)!important;margin:16px 5px 9px!important}
.sidebar .badge{border:1px solid rgba(255,255,255,.28);box-shadow:0 3px 8px rgba(0,0,0,.12)}
.build-version{color:#8fc3fa!important;border-top:1px solid rgba(178,219,255,.14);margin-top:18px;padding-top:15px}
@media(max-width:991.98px){
  .sidebar{background:linear-gradient(180deg,#075fc2 0%,#064a9d 48%,#073d82 100%)!important;border-right:0!important}
  .sidebar .offcanvas-header{color:#fff;border-color:rgba(255,255,255,.15)}
  .sidebar .offcanvas-header .text-secondary{color:#b8d8ff!important}
  .sidebar .btn-close{filter:invert(1) grayscale(1) brightness(2)}
  .sidebar-inner{padding-top:12px}
}

/* Design 4 viewport guard */
body{overflow-x:hidden}

/* Design 5: compact scoring editor */
.scoring-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:18px}.score-search-wrap{position:relative;width:min(360px,100%)}.score-search-icon{position:absolute;left:14px;top:50%;transform:translateY(-50%);font-size:23px;color:#7590b5;line-height:1;pointer-events:none}.score-search-wrap input{padding-left:43px;background:#fff}
.score-help-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.score-help-strip>div{display:flex;align-items:center;gap:9px;background:#f8fbff;border:1px solid #e0e9f5;border-radius:13px;padding:10px 13px;color:#53647c;font-size:.82rem;font-weight:650}.score-help-strip b{width:25px;height:25px;display:grid;place-items:center;border-radius:8px;background:#eaf2ff;color:#1f67d8}
.score-accordion{display:grid;gap:10px}.score-accordion .accordion-item{border:1px solid #e0e8f3!important;border-radius:16px!important;overflow:hidden;background:#fff;box-shadow:0 7px 22px rgba(30,54,92,.045)}.score-module-button{display:flex;align-items:center;gap:12px;padding:14px 16px!important;background:#fff!important;box-shadow:none!important;color:#22324d!important}.score-module-button:not(.collapsed){background:linear-gradient(180deg,#fbfdff,#f7fbff)!important;border-bottom:1px solid #e7edf5}.score-module-button::after{margin-left:8px}.score-module-no{width:38px;height:38px;display:grid;place-items:center;flex:0 0 38px;border-radius:11px;background:#eaf2ff;color:#1768da;font-weight:850}.score-module-title-wrap{display:flex;flex-direction:column;min-width:190px;flex:1;align-items:flex-start;text-align:left}.score-module-title-wrap strong{font-size:.92rem}.score-module-title-wrap small{font-size:.71rem;color:#8591a4;margin-top:2px}.score-module-summary{display:flex;align-items:center;gap:8px;max-width:54%;margin-left:auto}.score-summary-pill{display:flex;align-items:baseline;gap:7px;border:1px solid #e5ebf3;background:#f8fafc;border-radius:10px;padding:7px 9px;white-space:nowrap}.score-summary-pill small{font-size:.64rem;color:#8390a3}.score-summary-pill b{font-size:.76rem;color:#33425a;max-width:220px;overflow:hidden;text-overflow:ellipsis}.score-summary-pill.formula{max-width:260px}.score-summary-pill.products{background:#eef8ff;border-color:#d8ecfb}.score-open-label{font-size:.72rem;font-weight:800;color:#1f67d8;background:#edf4ff;border:1px solid #d9e7fc;border-radius:9px;padding:7px 9px;white-space:nowrap}.score-module-button:not(.collapsed) .score-open-label{background:#1768da;color:#fff;border-color:#1768da}
.score-module-body{padding:20px 20px 18px}.score-section-title{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:14px}.score-section-title h6{margin:0 0 2px;font-weight:800;color:#24334c}.score-section-title p{margin:0;color:#7b889b;font-size:.77rem}.quick-points{display:flex;gap:5px;flex-wrap:wrap}.quick-points button{border:1px solid #dce5f0;background:#fff;color:#52647d;font-weight:800;border-radius:8px;min-width:35px;height:31px;padding:0 8px}.quick-points button:hover{border-color:#8cb7f6;color:#1768da;background:#f4f8ff}
.score-basic-grid{display:grid;grid-template-columns:minmax(180px,.8fr) minmax(180px,.8fr) minmax(280px,1.5fr);gap:12px;align-items:start}.score-field{border:1px solid #e6ebf2;border-radius:13px;background:#fbfcfe;padding:12px}.score-field-important{background:#f7fbff;border-color:#dbe9fb}.score-field .form-label{margin-bottom:7px}.formula-note{font-size:.67rem;color:#8a95a6;margin-top:6px}.formula-dynamic{display:grid;grid-template-columns:1.6fr .7fr .7fr;gap:12px;margin-top:12px}.number-stepper{display:grid;grid-template-columns:38px minmax(70px,1fr) 38px;align-items:stretch}.number-stepper .form-control{border-radius:0;text-align:center;font-weight:800;min-width:0;padding-left:6px;padding-right:6px}.step-btn{border:1px solid #dce3ed;background:#fff;color:#2767c5;font-size:19px;font-weight:800}.step-btn:first-child{border-radius:10px 0 0 10px;border-right:0}.step-btn:last-child{border-radius:0 10px 10px 0;border-left:0}.step-btn:hover{background:#edf5ff}.number-stepper.compact{grid-template-columns:32px minmax(60px,1fr) 32px}.number-stepper.compact .form-control{min-height:36px}.number-stepper.compact .step-btn{font-size:16px}
.score-advanced,.score-products{margin-top:13px;border:1px solid #e3e9f1;border-radius:13px;background:#fff;overflow:hidden}.score-advanced summary,.score-products summary{list-style:none;cursor:pointer;padding:13px 15px;font-size:.8rem;font-weight:800;color:#34435c;display:flex;align-items:center;justify-content:space-between;gap:12px;background:#fbfcfe}.score-advanced summary::-webkit-details-marker,.score-products summary::-webkit-details-marker{display:none}.score-advanced summary:after,.score-products summary:after{content:'+';font-size:19px;color:#5c7596}.score-advanced[open] summary:after,.score-products[open] summary:after{content:'−'}.score-products summary>span:first-child{display:flex;flex-direction:column;gap:2px}.score-products summary small{font-weight:500;color:#8290a4;font-size:.68rem}.score-toggle-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;padding:12px 14px 14px}.score-toggle{display:flex;align-items:flex-start;gap:10px;border:1px solid #e8edf3;border-radius:11px;padding:11px;background:#fff;cursor:pointer}.score-toggle span{display:flex;flex-direction:column;gap:2px}.score-toggle b{font-size:.77rem}.score-toggle small{font-size:.67rem;color:#8894a5}.score-product-list{display:grid;gap:8px;padding:12px}.score-product-row{display:grid;grid-template-columns:minmax(120px,.8fr) minmax(150px,.75fr) minmax(150px,.75fr) minmax(250px,1.4fr) minmax(140px,.65fr) minmax(130px,.7fr);gap:9px;align-items:end;border:1px solid #e8edf3;border-radius:12px;padding:10px;background:#fcfdff}.score-product-row>div>label,.score-product-check span{display:block;font-size:.64rem;color:#8591a3;font-weight:750;margin-bottom:5px}.score-product-name{display:flex!important;align-items:center;gap:9px;align-self:center}.score-product-name span{width:29px;height:29px;display:grid!important;place-items:center;border-radius:9px;background:#eaf2ff;color:#1768da;font-weight:850;font-size:.72rem}.score-product-name b{font-size:.84rem}.score-product-check{display:flex;align-items:center;gap:7px;align-self:center;padding-top:17px}.score-product-check span{margin:0;color:#53627a}.score-module-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:15px;padding-top:14px;border-top:1px solid #edf1f6}.score-savebar{position:sticky;bottom:12px;z-index:5;display:flex;align-items:center;justify-content:space-between;gap:14px;background:rgba(255,255,255,.94);backdrop-filter:blur(10px);border:1px solid #dfe7f1;border-radius:15px;padding:10px 12px 10px 16px;box-shadow:0 13px 34px rgba(30,54,92,.13)}.score-savebar span{font-size:.72rem;color:#728096}
@media(max-width:1200px){.score-module-summary{display:none}.score-basic-grid{grid-template-columns:repeat(2,1fr)}.score-formula-select{grid-column:1/-1}.score-product-row{grid-template-columns:repeat(2,minmax(0,1fr))}.score-product-name,.score-product-formula{grid-column:1/-1}.formula-dynamic{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.scoring-heading{align-items:stretch;flex-direction:column}.score-search-wrap{width:100%}.score-help-strip{grid-template-columns:1fr}.score-module-button{padding:12px!important}.score-module-title-wrap{min-width:0}.score-open-label{display:none}.score-basic-grid,.formula-dynamic,.score-toggle-grid{grid-template-columns:1fr}.score-product-row{grid-template-columns:1fr}.score-product-name,.score-product-formula{grid-column:auto}.score-section-title{align-items:flex-start;flex-direction:column}.score-savebar{align-items:stretch;flex-direction:column}.score-savebar .btn{width:100%}}

/* Role cards */
.role-intro-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:16px}.role-intro{border:1px solid #e2e9f2;border-radius:14px;background:#fff;padding:13px 14px}.role-intro strong{display:block;font-size:.85rem;color:#263650}.role-intro small{display:block;color:#7b8799;font-size:.69rem;margin-top:4px;line-height:1.45}.role-accordion{display:grid;gap:10px}.role-accordion .accordion-item{border:1px solid #e2e9f2!important;border-radius:15px!important;overflow:hidden}.role-button{background:#fff!important;display:flex;gap:11px;align-items:center;padding:14px 16px!important;box-shadow:none!important}.role-avatar{width:38px;height:38px;border-radius:11px;display:grid;place-items:center;background:#eaf2ff;color:#1768da;font-weight:900}.role-meta{display:flex;flex-direction:column;align-items:flex-start;flex:1}.role-meta strong{font-size:.88rem;color:#263650}.role-meta small{font-size:.68rem;color:#8490a2}.role-perm-count{font-size:.7rem;background:#f0f4f9;border:1px solid #e0e7ef;color:#617087;border-radius:999px;padding:5px 8px;margin-right:8px}.role-permission-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.role-permission-item{display:flex;align-items:flex-start;gap:9px;border:1px solid #e7ecf2;border-radius:11px;padding:10px 11px;background:#fff}.role-permission-item span{display:flex;flex-direction:column;gap:2px}.role-permission-item b{font-size:.75rem;color:#334159}.role-permission-item small{font-size:.64rem;color:#8a96a7}.role-permission-item.locked{background:#f7f9fb}.role-footer-note{font-size:.69rem;color:#7f8b9d;margin-top:10px}.role-actions{display:flex;justify-content:flex-end;margin-top:13px}.role-preset-note{background:#f7fbff;border:1px solid #dfeaf7;border-radius:11px;padding:10px 12px;color:#5d6e85;font-size:.71rem;margin-bottom:12px}@media(max-width:950px){.role-intro-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:680px){.role-intro-grid,.role-permission-grid{grid-template-columns:1fr}}

/* Design 6: user creation and management */
.users-page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px}.add-user-btn{display:inline-flex;align-items:center;gap:8px}.add-user-plus{width:22px;height:22px;display:grid;place-items:center;border-radius:7px;background:rgba(255,255,255,.17);font-size:18px;line-height:1}.users-card{overflow:visible}.users-list-head{display:flex;align-items:center;justify-content:space-between;gap:15px}.users-list-head>div:first-child{display:flex;flex-direction:column}.users-list-head small{font-size:.7rem;color:#8793a5;margin-top:2px}.user-search-box{position:relative;width:min(330px,100%)}.user-search-box span{position:absolute;left:13px;top:50%;transform:translateY(-52%);font-size:20px;color:#8391a7;z-index:1}.user-search-box .form-control{padding-left:38px;min-height:38px}.user-role-pill{display:inline-flex;padding:5px 9px;border-radius:999px;background:#eef4ff;color:#245fac;border:1px solid #dce8fb;font-size:.7rem;font-weight:750}.user-status-active{background:#e7f7f0!important;color:#117652!important;border:1px solid #cceee0}.add-user-modal{border:0;border-radius:20px;overflow:hidden}.add-user-modal .modal-header{padding:18px 20px}.add-user-modal .modal-body{padding:18px 20px;background:#f8fafc}.add-user-section{background:#fff;border:1px solid #e3e9f1;border-radius:15px;padding:16px}.add-user-section-title{display:flex;align-items:center;gap:10px;margin-bottom:14px}.add-user-section-title>span{width:31px;height:31px;display:grid;place-items:center;border-radius:9px;background:#eaf2ff;color:#1768da;font-weight:900}.add-user-section-title>div{display:flex;flex-direction:column}.add-user-section-title strong{font-size:.83rem;color:#2a3951}.add-user-section-title small{font-size:.67rem;color:#8793a4;margin-top:2px}.user-active-switch{width:100%;min-height:58px;display:flex;align-items:center;gap:10px;border:1px solid #e0e7ef;border-radius:12px;padding:10px 12px;cursor:pointer;background:#fbfcfe}.user-active-switch input{position:absolute;opacity:0;pointer-events:none}.user-switch-ui{position:relative;width:42px;height:24px;border-radius:999px;background:#cbd5e1;transition:.2s;flex:0 0 42px}.user-switch-ui:after{content:"";position:absolute;width:18px;height:18px;border-radius:50%;background:#fff;left:3px;top:3px;box-shadow:0 1px 4px rgba(0,0,0,.2);transition:.2s}.user-active-switch input:checked+.user-switch-ui{background:#1b9b6a}.user-active-switch input:checked+.user-switch-ui:after{transform:translateX(18px)}.user-active-switch>span:last-child{display:flex;flex-direction:column}.user-active-switch strong{font-size:.75rem;color:#36445b}.user-active-switch small{font-size:.64rem;color:#8793a4;margin-top:2px}@media(max-width:760px){.users-page-head,.users-list-head{align-items:stretch;flex-direction:column}.users-page-head .btn{width:100%;justify-content:center}.user-search-box{width:100%}.users-card{overflow:hidden}}

/* KPI language selector */
.language-switcher{height:40px;display:inline-flex;align-items:center;gap:2px;padding:4px 5px;border-radius:12px;background:#fff;border:1px solid #e2e8f2;box-shadow:0 5px 16px rgba(25,55,95,.05)}
.language-switcher .lang-globe{width:18px;height:18px;margin:0 4px 0 2px;fill:none;stroke:#315b91;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.language-switcher button{border:0;background:transparent;color:#65758e;font-size:11px;font-weight:800;min-width:31px;height:30px;padding:0 7px;border-radius:8px;cursor:pointer;transition:.15s}
.language-switcher button:hover{background:#f0f5fc;color:#214f88}.language-switcher button.active{background:#1677e8;color:#fff;box-shadow:0 4px 10px rgba(22,119,232,.22)}
.auth-language-switcher{position:fixed;right:22px;top:20px;z-index:50}
@media(max-width:740px){.language-switcher{height:36px}.language-switcher .lang-globe{display:none}.language-switcher button{min-width:28px;height:28px;padding:0 5px}.auth-language-switcher{right:12px;top:12px}}

/* Bo'riboyev Eldar Mamurjonivich official product credit */
.build-version{display:flex;flex-direction:column;align-items:center;gap:3px;line-height:1.35;letter-spacing:.01em}
.build-version span{font-size:10px;opacity:.82}
.build-version strong{font-size:10px;font-weight:700;color:#d9edff;letter-spacing:.025em}

/* Interactive product-to-module flow */
.product-wizard-card{border:1px solid #dfe8f5;box-shadow:0 18px 50px rgba(29,71,137,.08)}
.product-wizard-step{display:flex;gap:13px;align-items:flex-start;padding:14px 15px;border-radius:14px;background:#f5f9ff;border:1px solid #dceafd}.product-wizard-step>span{width:34px;height:34px;display:grid;place-items:center;border-radius:10px;background:#1768da;color:#fff;font-weight:850;flex:0 0 34px}.product-wizard-step>div{display:flex;flex-direction:column;gap:2px}.product-wizard-step b{color:#203454}.product-wizard-step small{color:#71819a}.product-wizard-step.muted{background:#fbfcfe;border-color:#e6ebf2}.product-wizard-step.muted>span{background:#e8eef7;color:#55708f}.selected-module-preview{display:flex;align-items:center;gap:12px;margin-top:13px;padding:13px;border:1px solid #cfe0f6;background:#f7fbff;border-radius:13px}.selected-module-number{width:42px;height:42px;display:grid;place-items:center;border-radius:12px;background:#1768da;color:#fff;font-weight:850}.selected-module-preview>div{display:flex;flex-direction:column}.selected-module-preview small{font-size:.7rem;color:#8090a7}.selected-module-preview b{color:#203454}.selected-module-preview span:last-child{font-size:.75rem;color:#667791}.product-context-banner{display:flex;gap:13px;align-items:center;padding:14px 16px;border-radius:15px;background:linear-gradient(135deg,#eef6ff,#f8fbff);border:1px solid #cfe2fb}.product-context-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:12px;background:#1768da;color:#fff;font-size:24px}.product-context-banner>div:last-child{display:flex;flex-direction:column}.product-context-banner span{font-size:.75rem;color:#6c7d95}.module-product-selected>td{background:#f4f9ff!important;border-top:2px solid #69a5ef;border-bottom:0}.module-product-entry-row td{background:#f4f9ff!important;padding:0 14px 16px!important}.module-product-entry{border:1px solid #cfe0f6;border-radius:15px;padding:16px;background:#fff;box-shadow:0 10px 28px rgba(31,76,137,.07)}.module-product-entry-head{display:flex;justify-content:space-between;gap:15px;align-items:flex-start;margin-bottom:14px}.module-product-entry-head>div{display:flex;gap:10px;align-items:flex-start}.module-product-entry-head>div>div{display:flex;flex-direction:column}.module-product-entry-head small{font-size:.72rem;color:#77869b}.step-chip{width:30px;height:30px;display:grid;place-items:center;border-radius:9px;background:#1768da;color:#fff;font-weight:800;flex:0 0 30px}.module-product-inline-form{display:flex;gap:12px;align-items:end}.module-product-inline-form .btn{min-height:48px}@media(max-width:760px){.module-product-inline-form{flex-direction:column;align-items:stretch}.module-product-entry-head{flex-direction:column}.module-product-entry-head .btn{align-self:flex-end}}

.integration-card{border-radius:18px;transition:transform .18s ease,box-shadow .18s ease}.integration-card:hover{transform:translateY(-2px)}.integration-logo{width:46px;height:46px;border-radius:14px;display:inline-flex;align-items:center;justify-content:center;font-weight:800;background:linear-gradient(135deg,#e9f1ff,#dbe8ff);color:#174ea6;border:1px solid #cfddf7}.integration-card code{font-size:.85em}

/* AI yordamchi */
.ai-result{white-space:pre-wrap;line-height:1.75;background:linear-gradient(180deg,#f8fbff,#f4f7fb);border:1px solid rgba(37,99,235,.12);border-radius:18px;padding:18px;min-height:280px;color:#18243b}

/* Local KPI ranking charts: no external CDN dependency */
.rank-legend-dot{width:11px;height:11px;border-radius:50%;display:inline-block}.rank-good{background:#198754!important}.rank-bad{background:#dc3545!important}.rank-neutral{background:#6c757d!important}.rank-chart-local{min-height:390px;border:1px solid #e8edf4;border-radius:14px;background:#fbfcfe;padding:18px;overflow:hidden}.rank-hbars{display:flex;flex-direction:column;gap:13px;max-height:520px;overflow:auto;padding:4px}.rank-hrow{display:grid;grid-template-columns:minmax(150px,280px) minmax(180px,1fr) 92px;gap:12px;align-items:center}.rank-hrow[data-user]{cursor:pointer}.rank-hlabel{display:flex;align-items:center;gap:8px;min-width:0}.rank-hlabel b{width:26px;height:26px;display:grid;place-items:center;border-radius:8px;background:#eef4fb;color:#1768da;font-size:.72rem;flex:0 0 26px}.rank-hlabel span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rank-htrack{height:30px;background:#edf1f5;border-radius:9px;position:relative}.rank-hfill{height:100%;border-radius:9px;position:relative;min-width:0;transition:width .25s ease,filter .15s ease}.rank-hfill:hover,.rank-vfill:hover{filter:brightness(.92)}.rank-hrow>strong{text-align:right;font-size:.82rem}.rank-local-tip{display:none;position:absolute;left:50%;bottom:calc(100% + 8px);transform:translateX(-50%);background:#172033;color:#fff;border-radius:9px;padding:8px 10px;font-size:.72rem;line-height:1.45;white-space:nowrap;z-index:20;box-shadow:0 8px 24px rgba(23,32,51,.22)}.rank-local-tip span{display:block;font-weight:400}.rank-hfill:hover .rank-local-tip,.rank-vfill:hover .rank-local-tip{display:block}.rank-vbars{height:350px;display:flex;align-items:flex-end;gap:12px;overflow-x:auto;padding:25px 10px 50px}.rank-vitem{height:100%;min-width:70px;flex:1;max-width:150px;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;position:relative}.rank-vitem[data-user]{cursor:pointer}.rank-vvalue{font-size:.72rem;font-weight:800;margin-bottom:6px}.rank-vfill{width:min(58px,72%);min-height:0;border-radius:9px 9px 3px 3px;position:relative;transition:height .25s ease,filter .15s ease}.rank-vlabel{position:absolute;top:calc(100% + 9px);width:100%;font-size:.68rem;color:#66758b;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rank-donut-wrap{min-height:350px;display:grid;place-items:center}.rank-donut{width:280px;height:280px;border-radius:50%;position:relative}.rank-donut>div{position:absolute;inset:62px;border-radius:50%;background:#fff;display:grid;place-content:center;text-align:center;box-shadow:0 4px 18px rgba(20,40,70,.08)}.rank-donut strong{font-size:2rem}.rank-donut span{font-size:.75rem;color:#6c757d}.rank-chart-legend{display:flex;flex-wrap:wrap;gap:8px}.rank-donut-item{display:inline-flex;align-items:center;gap:6px;border:1px solid #e4e9f0;border-radius:999px;padding:6px 9px;background:#fff;font-size:.72rem}.rank-donut-item i{width:9px;height:9px;border-radius:50%;display:inline-block}.review-action-card{position:sticky;top:88px}
@media(max-width:900px){.rank-hrow{grid-template-columns:120px 1fr 72px}.review-action-card{position:static}}@media(max-width:620px){.rank-chart-local{padding:10px}.rank-hrow{grid-template-columns:100px 1fr 62px;gap:7px}.rank-hlabel b{display:none}.rank-hrow>strong{font-size:.7rem}.rank-donut{width:230px;height:230px}.rank-donut>div{inset:52px}}
.file-preview-card{min-height:72vh}.file-preview-frame{display:block;width:100%;height:72vh;border:0;border-radius:10px;background:#f5f7fa}.file-preview-image-wrap{min-height:68vh;display:grid;place-items:center;background:#f5f7fa;border-radius:10px;padding:16px}.file-preview-image{max-width:100%;max-height:68vh;object-fit:contain}.file-preview-unavailable{min-height:60vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:30px}.file-preview-icon{width:74px;height:74px;border-radius:20px;display:grid;place-items:center;background:#eaf2ff;color:#1768da;font-size:2rem;font-weight:900;margin-bottom:16px}

/* Messages v2 */
.min-w-0{min-width:0}
.message-layout{align-items:stretch}
.message-sidebar-card,.message-thread-card{overflow:hidden}
.message-section-label{padding:10px 14px 7px;font-size:.7rem;text-transform:uppercase;letter-spacing:.06em;font-weight:850;color:#7c899d;background:#f8fafc;border-bottom:1px solid #edf1f6}
.message-contact-list{max-height:62vh;overflow:auto}
.message-contact{display:flex;gap:10px;align-items:center;padding:11px 13px!important;border-left:3px solid transparent!important}
.message-contact-unread{background:#eef5ff!important;border-left-color:#2563eb!important}
.message-contact-unread .message-preview,.message-contact-unread .fw-semibold{color:#173b78;font-weight:800}
.message-contact.active{background:#2563eb!important;border-left-color:#174ba9!important;color:#fff!important}
.message-contact.active small,.message-contact.active .message-preview{color:rgba(255,255,255,.82)!important}
.message-avatar{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;flex:0 0 36px;background:#e8f0ff;color:#245dbf;font-weight:850;border:1px solid #d6e4ff}
.message-contact.active .message-avatar{background:rgba(255,255,255,.18);color:#fff;border-color:rgba(255,255,255,.28)}
.message-avatar-lg{width:42px;height:42px;flex-basis:42px}
.message-preview{color:#5f6d82;margin-top:2px}
.message-thread-header{min-height:68px;background:#fff}
.message-thread{height:58vh;overflow:auto;background:#f7f9fc;padding:20px}
.message-row{display:flex;justify-content:flex-start;margin-bottom:10px}
.message-row-mine{justify-content:flex-end}
.message-bubble{max-width:min(76%,720px);padding:10px 12px;border-radius:14px;box-shadow:0 2px 7px rgba(32,52,84,.05)}
.message-bubble-incoming{background:#fff;border:1px solid #e7ecf3;border-bottom-left-radius:5px}
.message-bubble-mine{background:#2563eb;color:#fff;border-bottom-right-radius:5px}
.message-sender{font-size:.72rem;font-weight:850;margin-bottom:3px;opacity:.8}
.message-body{white-space:pre-wrap;word-break:break-word;line-height:1.45}
.message-meta{display:flex;justify-content:flex-end;gap:8px;margin-top:5px;font-size:.66rem;opacity:.72}
.message-read-state{font-weight:750}
.message-empty-thread{height:100%;min-height:240px;display:grid;place-items:center;color:#7c899d;text-align:center}
.message-search-form .input-group{flex-wrap:nowrap}
@media(max-width:991.98px){.message-contact-list{max-height:320px}.message-thread{height:52vh}.message-bubble{max-width:88%}}

/* User cabinet and cookie controls */
.top-profile-avatar{width:34px;height:34px;border-radius:50%;overflow:hidden;display:grid;place-items:center;flex:0 0 34px;border:2px solid rgba(255,255,255,.38);color:#fff;background:rgba(255,255,255,.12);font-weight:800;text-decoration:none}.top-profile-avatar img{width:100%;height:100%;object-fit:cover}.top-profile-avatar-fallback:hover{color:#fff;background:rgba(255,255,255,.2)}.user-chip-meta{color:inherit}.user-chip-meta:hover .user-chip-name{text-decoration:underline}.profile-card{border:1px solid #e4eaf2;border-radius:18px;box-shadow:0 8px 24px rgba(30,48,80,.05)}.profile-avatar-wrap{width:148px;height:148px;border-radius:50%;overflow:hidden;border:5px solid #eef3fa;box-shadow:0 8px 26px rgba(30,55,95,.12)}.profile-avatar-img,.profile-avatar-fallback{width:100%;height:100%;object-fit:cover}.profile-avatar-fallback{display:grid;place-items:center;background:linear-gradient(145deg,#e9f1ff,#d7e6ff);color:#245dbf;font-size:3.4rem;font-weight:850}.profile-official-item{height:100%;padding:12px 14px;border:1px solid #e6ebf2;border-radius:12px;background:#f9fbfd}.profile-official-item span{display:block;color:#7a8798;font-size:.72rem;margin-bottom:4px}.profile-official-item strong{display:block;color:#26354a;font-size:.86rem;line-height:1.35}.cookie-consent{position:fixed;left:18px;right:18px;bottom:18px;z-index:1090;max-width:980px;margin:auto;background:#fff;border:1px solid #dfe6ef;border-radius:16px;box-shadow:0 18px 50px rgba(22,39,68,.18);padding:14px 16px;display:flex;align-items:center;justify-content:space-between;gap:18px}.cookie-consent-text{display:flex;flex-direction:column;gap:3px;color:#334158}.cookie-consent-text strong{font-size:.88rem}.cookie-consent-text span{font-size:.75rem;line-height:1.45;color:#6f7d90}.cookie-consent-actions{display:flex;align-items:center;gap:8px;flex:0 0 auto}.cookie-consent-actions form{margin:0}@media(max-width:720px){.cookie-consent{align-items:stretch;flex-direction:column;bottom:10px;left:10px;right:10px}.cookie-consent-actions{justify-content:flex-end}.profile-avatar-wrap{width:122px;height:122px}}
.message-avatar-photo{overflow:hidden;padding:0}.message-avatar-photo img{width:100%;height:100%;display:block;object-fit:cover}
