/* راهنمای فایل: assets/home.css — استایل رابط عمومی، ورود یا پنل‌های سامانه. */
@font-face{
  font-family:"IranSansWeb";
  src:
    local("IranSansWeb"),
    local("IRANSansWeb"),
    url("fonts/IRANSansWeb.woff2") format("woff2"),
    url("fonts/IRANSansWeb.woff") format("woff");
  font-style:normal;
  font-weight:100 900;
  font-display:swap
}

html,
body,
button,
input,
select,
textarea{
  font-family:"IranSansWeb","IRANSansWeb",Tahoma,Arial,sans-serif !important
}

:root{
  --blue:#039bd8;
  --blue-dark:#087cae;
  --ink:#24272c;
  --muted:#76808a;
  --line:#e6eaed;
  --panel:#ffffff;
  --soft:#f8fafb;
  --footer:#202224;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  min-height:100vh;
  display:flex;
  flex-direction:column;
  color:var(--ink);
  background:#fff;
  font-family:"IranSansWeb","IRANSansWeb",Tahoma,Arial,sans-serif;
}
a{text-decoration:none;color:inherit}
img{display:block;max-width:100%}
button,input,select,textarea{font:inherit}

.site-header{
  min-height:82px;
  position:relative;
  z-index:20;
  display:flex;
  align-items:center;
  background:#fff;
  border-bottom:1px solid #edf0f2;
  box-shadow:0 1px 5px rgba(21,43,57,.03);
}
.site-header-inner{
  width:min(1440px,calc(100% - 48px));
  min-height:82px;
  margin:0 auto;
  display:grid;
  grid-template-columns:minmax(190px,1fr) auto minmax(190px,1fr);
  align-items:center;
  gap:24px;
}
.site-logo{
  direction:rtl;
  justify-self:start;
  display:flex;
  align-items:center;
  gap:10px;
}
.site-logo-mark{
  width:50px;
  height:50px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  color:#fff;
  background:linear-gradient(145deg,#20c2f1,#048fc9);
  box-shadow:0 8px 22px rgba(3,155,216,.22);
  font-size:24px;
  font-weight:900;
}
.site-logo-copy strong,.site-logo-copy small{display:block}
.site-logo-copy strong{color:#087dae;font-size:20px;letter-spacing:-.5px}
.site-logo-copy small{margin-top:3px;color:#75838a;font-size:14px}
.site-nav{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:38px;
  white-space:nowrap;
}
.site-nav a{
  position:relative;
  padding:30px 0 27px;
  color:#313437;
  font-size:14px;
  font-weight:700;
}
.site-nav a::after{
  content:"";
  position:absolute;
  right:50%;
  bottom:19px;
  width:0;
  height:2px;
  border-radius:2px;
  background:var(--blue);
  transition:.2s ease;
}
.site-nav a:hover,.site-nav a.active{color:var(--blue-dark)}
.site-nav a:hover::after,.site-nav a.active::after{right:0;width:100%}
.account-button{
  justify-self:end;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:38px;
  padding:0 16px;
  border-radius:6px;
  color:#fff;
  background:var(--blue);
  box-shadow:0 7px 18px rgba(3,155,216,.18);
  font-size:14px;
  font-weight:800;
}
.account-button:hover{background:var(--blue-dark)}
.site-menu-toggle{display:none;border:0;background:transparent;font-size:25px;cursor:pointer}

.site-hero{
  height:172px;
  position:relative;
  overflow:hidden;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#13202a;
  background:
    radial-gradient(circle at 15% 30%,rgba(255,255,255,.9),transparent 24%),
    radial-gradient(circle at 77% 36%,rgba(255,255,255,.72),transparent 28%),
    linear-gradient(100deg,#a7ddf3,#eaf8fe 48%,#8fd2ed);
}
.site-hero::before,.site-hero::after{
  content:"✣  ❄  ✢  ❅  ✣  ❄  ✢  ❅  ✣  ❄  ✢";
  position:absolute;
  color:rgba(255,255,255,.62);
  font-size:47px;
  letter-spacing:20px;
  white-space:nowrap;
}
.site-hero::before{top:-8px;right:-40px;transform:rotate(-3deg)}
.site-hero::after{bottom:-10px;left:-60px;transform:rotate(4deg);font-size:57px;opacity:.75}
.hero-pattern{
  position:absolute;
  width:190px;
  height:190px;
  border:2px solid rgba(255,255,255,.45);
  border-radius:50%;
}
.hero-pattern::before,.hero-pattern::after{
  content:"";
  position:absolute;
  inset:50% auto auto 50%;
  width:150%;
  height:2px;
  background:rgba(255,255,255,.42);
  transform-origin:center;
}
.hero-pattern::before{transform:translate(-50%,-50%) rotate(35deg)}
.hero-pattern::after{transform:translate(-50%,-50%) rotate(-35deg)}
.hero-pattern-one{right:8%;top:-55px}
.hero-pattern-two{left:13%;bottom:-95px;width:230px;height:230px}
.site-hero-content{position:relative;z-index:2;text-align:center}
.site-hero-content>span{color:#177ea5;font-size:14px;letter-spacing:3px;font-weight:800}
.site-hero h1{margin:10px 0 7px;color:#101316;font-size:29px;letter-spacing:-1px}
.site-hero p{margin:0;color:#487180;font-size:14px}

.home-sections{
  width:min(1440px,calc(100% - 36px));
  margin:36px auto 70px;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:20px;
  align-items:start;
}
.home-panel{
  min-width:0;
  padding:27px;
  border:1px solid var(--line);
  border-radius:13px;
  background:var(--panel);
  box-shadow:0 2px 7px rgba(38,59,70,.035);
}
.home-section-head{
  margin-bottom:20px;
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
}
.home-section-head h2{margin:0;font-size:17px}
.home-section-head p{margin:7px 0 0;color:#8a939b;font-size:14px}
.section-head-icon{
  width:38px;
  height:38px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:11px;
  color:#09a2dd;
  background:#ecf9fe;
}
.featured-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.featured-card{
  min-height:128px;
  padding:15px 17px;
  display:flex;
  align-items:center;
  gap:16px;
  border:1px solid #e5e8ea;
  border-radius:11px;
  background:#fff;
  transition:.18s ease;
}
.featured-card:hover{transform:translateY(-2px);box-shadow:0 9px 25px rgba(26,62,78,.08)}
.featured-avatar{
  width:88px;
  height:88px;
  flex:0 0 auto;
  object-fit:cover;
  border-radius:50%;
  border:1px solid #e0e5e8;
  background:#eef8fc;
}
.featured-avatar-placeholder{
  display:flex;
  align-items:center;
  justify-content:center;
  color:#078abe;
  font-size:28px;
  font-weight:900;
}
.featured-info{min-width:0}
.featured-info strong,.featured-info span,.featured-info small{display:block}
.featured-info strong{font-size:14px}
.featured-info span{margin-top:8px;color:#657078;font-size:14px}
.featured-info small{margin-top:5px;color:#536c78;font-size:14px;line-height:1.7}

.blog-heading{align-items:center;border-bottom:1px solid #8d969a;padding-bottom:8px}
.blog-heading>a{color:var(--blue);font-size:14px;font-weight:800}
.blog-heading>div{text-align:right}
.home-blog-list{display:flex;flex-direction:column;gap:11px}
.home-blog-card{
  min-height:135px;
  display:grid;
  grid-template-columns:190px minmax(0,1fr);
  overflow:hidden;
  border:1px solid #e7eaec;
  border-radius:11px;
  background:#fff;
}
.home-blog-image{min-height:135px;background:#ecf5f9;overflow:hidden}
.home-blog-image img{width:100%;height:100%;object-fit:cover}
.home-blog-image.placeholder{display:flex;align-items:center;justify-content:center;color:#0c9bd4;font-size:37px}
.home-blog-copy{padding:16px 18px;display:flex;flex-direction:column;justify-content:center}
.home-blog-copy h3{margin:0;font-size:14px;line-height:1.8}
.home-blog-copy p{margin:7px 0;color:#4f565b;font-size:14px;line-height:1.9}
.home-blog-copy>div{display:flex;align-items:center;justify-content:space-between;gap:10px}
.home-blog-copy>div a{color:var(--blue);font-size:14px;font-weight:800}
.home-blog-copy time{color:#99a0a5;font-size:14px}
.home-empty-state{
  min-height:300px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  color:#7f8a91;
}
.home-empty-state.compact{min-height:260px}
.home-empty-state>span{
  width:58px;height:58px;display:flex;align-items:center;justify-content:center;
  border-radius:18px;color:#078fc5;background:#edf9fe;font-size:24px
}
.home-empty-state strong{margin-top:15px;color:#4a5359;font-size:14px}
.home-empty-state small{margin-top:7px;font-size:14px}

.site-footer{
  margin-top:auto;
  min-height:104px;
  padding:25px 7%;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:8px;
  color:#9ca2a6;
  background:var(--footer);
  text-align:center;
}
.site-footer div{display:flex;align-items:center;gap:7px}
.site-footer strong{color:#fff;font-size:14px}
.site-footer span,.site-footer p,.site-footer small{margin:0;font-size:14px}
.site-footer p a{color:#fff;font-weight:700;text-decoration:none}.site-footer p a:hover{text-decoration:underline}

.compact-header,.compact-header .site-header-inner{min-height:72px}
.compact-header .site-nav a{padding-top:25px;padding-bottom:23px}
.public-blog-main,.public-post-main{width:min(1180px,calc(100% - 36px));margin:32px auto 70px;flex:1}
.public-page-hero{
  padding:46px 30px;
  border-radius:21px;
  color:#fff;
  background:linear-gradient(135deg,#079ed8,#0878aa);
  text-align:center;
}
.public-page-hero span{font-size:14px;letter-spacing:3px;color:#d9f5ff}
.public-page-hero h1{margin:12px 0 8px;font-size:30px}
.public-page-hero p{margin:0;color:#dbf3fc;font-size:14px}
.public-blog-grid{margin-top:26px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.public-blog-card{overflow:hidden;border:1px solid var(--line);border-radius:16px;background:#fff;box-shadow:0 7px 24px rgba(28,58,71,.06)}
.public-blog-cover{height:210px;display:block;overflow:hidden;background:#eaf7fc}
.public-blog-cover img{width:100%;height:100%;object-fit:cover;transition:.25s ease}
.public-blog-card:hover img{transform:scale(1.035)}
.public-blog-cover.placeholder{display:flex;align-items:center;justify-content:center;color:#079bd4;font-size:42px}
.public-blog-content{padding:19px}
.public-blog-content time{color:#98a1a7;font-size:14px}
.public-blog-content h2{margin:9px 0;font-size:15px;line-height:1.8}
.public-blog-content p{margin:0;color:#606a70;font-size:14px;line-height:2}
.read-more{display:inline-flex;margin-top:14px;color:var(--blue);font-size:14px;font-weight:800}
.public-empty-card{grid-column:1/-1;padding:70px 25px;border:1px solid var(--line);border-radius:18px;text-align:center;background:#fff}
.public-empty-card>span{width:60px;height:60px;margin:auto;display:flex;align-items:center;justify-content:center;border-radius:18px;color:#079bd4;background:#ecf9fe;font-size:25px}
.public-empty-card h1,.public-empty-card h2{margin:16px 0 8px}
.public-empty-card p{color:#778087;font-size:14px}
.public-post-main{max-width:900px}
.public-post-card{overflow:hidden;border:1px solid var(--line);border-radius:19px;background:#fff;box-shadow:0 10px 35px rgba(23,50,61,.07)}
.public-post-header{padding:34px 40px;text-align:center}
.public-post-header>a{color:var(--blue);font-size:14px;font-weight:800}
.public-post-header h1{margin:15px 0;font-size:28px;line-height:1.7}
.public-post-header div{display:flex;justify-content:center;gap:15px;color:#8b949a;font-size:14px}
.public-post-image{width:100%;max-height:480px;object-fit:cover}
.public-post-lead{margin:30px 40px 0;padding:20px;border-radius:13px;color:#365565;background:#f0f9fc;font-size:14px;line-height:2}
.public-post-body{padding:35px 40px 50px;color:#343a3e;font-size:14px;line-height:2.4}
.post-not-found{margin-top:70px}

@media(max-width:1100px){
  .site-header-inner{grid-template-columns:auto 1fr auto}
  .site-nav{gap:20px}
  .home-sections{grid-template-columns:1fr}
  .featured-panel{order:1}.blog-panel{order:2}
  .public-blog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:760px){
  .site-header{min-height:70px}
  .site-header-inner{width:calc(100% - 28px);min-height:70px;grid-template-columns:auto auto 1fr;gap:10px}
  .site-logo-copy small{display:none}
  .site-logo-mark{width:43px;height:43px;font-size:20px}
  .site-menu-toggle{display:block;justify-self:center}
  .site-nav{
    position:absolute;top:69px;right:14px;left:14px;padding:12px;
    display:none;flex-direction:column;align-items:stretch;gap:2px;
    border:1px solid var(--line);border-radius:13px;background:#fff;box-shadow:0 15px 35px rgba(20,47,60,.12)
  }
  .site-nav.show{display:flex}
  .site-nav a{padding:12px;border-radius:9px}
  .site-nav a::after{display:none}
  .site-nav a:hover,.site-nav a.active{background:#eff9fd}
  .account-button{min-height:34px;padding:0 10px;font-size:14px}
  .site-hero{height:150px}
  .site-hero h1{font-size:23px}
  .site-hero p{padding:0 25px;line-height:1.8}
  .home-sections{width:calc(100% - 24px);margin-top:20px}
  .home-panel{padding:18px}
  .featured-grid{grid-template-columns:1fr}
  .home-blog-card{grid-template-columns:120px minmax(0,1fr)}
  .home-blog-copy{padding:12px}
  .public-blog-grid{grid-template-columns:1fr}
  .public-blog-main,.public-post-main{width:calc(100% - 24px);margin-top:20px}
  .public-post-header{padding:25px 20px}
  .public-post-header h1{font-size:21px}
  .public-post-lead{margin:20px 18px 0}
  .public-post-body{padding:25px 20px 40px}
  .public-blog-nav{display:flex;position:static;padding:0;border:0;box-shadow:none;flex-direction:row;background:transparent}
  .public-blog-nav a{display:none}
  .public-blog-nav a.active{display:block;background:transparent}
}
@media(max-width:470px){
  .site-logo-copy strong{font-size:15px}
  .home-blog-card{grid-template-columns:1fr}
  .home-blog-image{height:160px}
  .featured-card{padding:13px}
  .featured-avatar{width:72px;height:72px}
}


/* Header placement correction — v22 */
.site-header-inner{
  direction:ltr;
  grid-template-areas:"logo nav account";
}
.site-logo{grid-area:logo;direction:rtl;justify-self:start}
.site-nav{grid-area:nav;direction:rtl}
.account-button{grid-area:account;direction:rtl;justify-self:end}
.site-menu-toggle{grid-area:menu}
@media(max-width:760px){
  .site-header-inner{
    grid-template-columns:auto 1fr auto;
    grid-template-areas:"logo menu account";
  }
  .site-menu-toggle{justify-self:center}
}


/* ===== Home header, evaluation hero and Persian rendering — v24 ===== */

html,
body{
  direction:rtl;
}

body,
button,
input,
select,
textarea{
  font-family:"IranSansWeb","IRANSansWeb",Tahoma,Arial,sans-serif;
}

.site-header-inner{
  direction:ltr;
  grid-template-columns:minmax(190px,1fr) auto minmax(190px,1fr);
}

.site-logo{
  grid-column:3;
  justify-self:end;
  direction:rtl;
}

.site-nav{
  grid-column:2;
  direction:rtl;
}

.account-button{
  grid-column:1;
  justify-self:start;
  direction:rtl;
}

.site-menu-toggle{
  grid-column:2;
  justify-self:center;
}

.site-hero{
  min-height:230px;
  height:auto;
  isolation:isolate;
  padding:42px 20px;
  background-image:
    linear-gradient(
      90deg,
      rgba(222,244,255,.92) 0%,
      rgba(255,255,255,.78) 35%,
      rgba(255,255,255,.72) 65%,
      rgba(215,241,255,.92) 100%
    ),
    url("images/evaluation-hero.svg");
  background-size:cover;
  background-position:center;
  background-repeat:no-repeat;
}

.site-hero::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  background:
    radial-gradient(circle at 50% 50%,rgba(255,255,255,.88),rgba(255,255,255,.22) 36%,transparent 66%);
  color:transparent;
  font-size:0;
  letter-spacing:0;
  transform:none;
}

.site-hero::after{
  content:"";
  position:absolute;
  inset:auto 50% 25px auto;
  z-index:0;
  width:360px;
  height:90px;
  border-radius:50%;
  background:rgba(30,167,220,.13);
  filter:blur(34px);
  transform:translateX(50%);
  font-size:0;
}

.hero-pattern{
  display:none;
}

.site-hero-content{
  position:relative;
  z-index:2;
  max-width:720px;
  padding:21px 34px;
  border:1px solid rgba(255,255,255,.72);
  border-radius:20px;
  background:rgba(255,255,255,.58);
  box-shadow:0 18px 50px rgba(25,111,150,.09);
  backdrop-filter:blur(8px);
}

.site-hero-content>span{
  color:#087fb4;
  font-size:14px;
  letter-spacing:2.5px;
}

.site-hero h1{
  margin:10px 0 8px;
  color:#102d3d;
  font-size:31px;
}

.site-hero p{
  color:#3f697c;
  font-size:14px;
  line-height:1.9;
}

@media(max-width:760px){
  .site-header-inner{
    direction:ltr;
    grid-template-columns:auto 1fr auto;
  }

  .account-button{
    grid-column:1;
    justify-self:start;
  }

  .site-menu-toggle{
    grid-column:2;
    justify-self:center;
  }

  .site-logo{
    grid-column:3;
    justify-self:end;
  }

  .site-nav{
    grid-column:auto;
    direction:rtl;
  }

  .site-hero{
    min-height:190px;
    padding:30px 14px;
    background-position:center;
  }

  .site-hero-content{
    width:min(100%,560px);
    padding:18px 20px;
    border-radius:16px;
  }

  .site-hero h1{
    font-size:24px;
  }
}


/* ===== Managed public header menu — v27 ===== */

@media(min-width:761px){
  .site-header-inner{
    min-height:82px;
    height:auto;
  }

  .site-nav{
    flex-wrap:wrap;
    gap:14px 30px;
    white-space:normal;
  }

  .site-nav a{
    white-space:nowrap;
  }
}


/* ===== System theme and responsive layout — v32 ===== */

:root{
  --rk-container:1440px;
  --rk-bg:#f4f7fb;
  --rk-surface:#ffffff;
  --rk-surface-2:#f8faff;
  --rk-text:#172033;
  --rk-muted:#6f7b91;
  --rk-border:#dfe5ef;
  --rk-primary:#3157e2;
  --rk-shadow:0 18px 50px rgba(20,35,70,.10);
}

html[data-theme="dark"]{
  color-scheme:dark;
  --rk-bg:#0f1420;
  --rk-surface:#171d2b;
  --rk-surface-2:#1d2536;
  --rk-text:#edf3ff;
  --rk-muted:#a8b3c8;
  --rk-border:#303a50;
  --rk-primary:#6e8cff;
  --rk-shadow:0 18px 55px rgba(0,0,0,.35);
}

html[data-theme="dark"] body{
  color:var(--rk-text);
  background:var(--rk-bg);
}

html[data-theme="dark"] input,
html[data-theme="dark"] select,
html[data-theme="dark"] textarea{
  color:var(--rk-text)!important;
  background:#121827!important;
  border-color:var(--rk-border)!important;
}

.theme-toggle{
  min-height:38px;
  padding:0 12px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  border:1px solid var(--rk-border);
  border-radius:11px;
  color:var(--rk-text);
  background:var(--rk-surface);
  font-family:inherit;
  font-size:14px;
  font-weight:800;
  cursor:pointer;
}

@media(max-width:780px){
  .theme-toggle span[data-theme-label]{display:none}
}

.site-header-inner,
.home-main,
.site-footer-inner,
.home-section,
.blog-page-wrap,
.public-post-wrap{
  width:min(var(--rk-container),calc(100% - 32px))!important;
  max-width:var(--rk-container)!important;
}

.site-logo img{
  width:190px;
  max-width:100%;
  height:auto;
  display:block;
}

.site-header{
  background:var(--rk-surface)!important;
  border-color:var(--rk-border)!important;
}

.site-nav a,
.site-logo-copy strong{
  color:var(--rk-text)!important;
}

.account-button{
  white-space:nowrap;
}

.public-theme-toggle{
  grid-column:1;
  justify-self:center;
}

html[data-theme="dark"] .site-hero-content,
html[data-theme="dark"] .home-card,
html[data-theme="dark"] .home-panel,
html[data-theme="dark"] .featured-panel,
html[data-theme="dark"] .blog-card,
html[data-theme="dark"] .public-post-card{
  color:var(--rk-text)!important;
  background:rgba(23,29,43,.92)!important;
  border-color:var(--rk-border)!important;
}

html[data-theme="dark"] .site-hero{
  background-color:#101827!important;
  background-blend-mode:multiply;
}

html[data-theme="dark"] .site-hero h1,
html[data-theme="dark"] h2,
html[data-theme="dark"] h3,
html[data-theme="dark"] strong{
  color:var(--rk-text)!important;
}

html[data-theme="dark"] p,
html[data-theme="dark"] small{
  color:var(--rk-muted)!important;
}

@media(max-width:900px){
  .site-header-inner{
    grid-template-columns:auto 1fr auto!important;
    gap:10px;
  }

  .site-logo img{width:145px}
  .public-theme-toggle{grid-column:auto}
}

@media(max-width:760px){
  .site-header-inner{
    display:grid!important;
    grid-template-columns:auto 1fr auto!important;
    min-height:72px!important;
  }

  .site-logo{
    grid-column:3!important;
  }

  .site-menu-toggle{
    display:flex!important;
    grid-column:2!important;
  }

  .account-button{
    grid-column:1!important;
    min-width:0;
    padding:0 10px;
  }

  .public-theme-toggle{
    position:fixed;
    left:12px;
    bottom:12px;
    z-index:50;
    width:42px;
    padding:0;
  }

  .site-nav{
    position:absolute;
    top:100%;
    right:10px;
    left:10px;
    display:none!important;
    padding:12px;
    border:1px solid var(--rk-border);
    border-radius:14px;
    background:var(--rk-surface);
    box-shadow:var(--rk-shadow);
  }

  .site-nav.show,
  .site-nav.open{
    display:flex!important;
    flex-direction:column;
  }
}

.public-blog-main,
.public-post-main,
.public-page-hero,
.public-blog-grid,
.public-post-content{
  width:min(var(--rk-container),calc(100% - 32px));
  max-width:var(--rk-container);
  margin-inline:auto;
}


/* ===== Public header appearance fix — v33 ===== */
.site-header{
  position:sticky;
  top:0;
  backdrop-filter:saturate(180%) blur(10px);
}

.site-header-inner{
  width:min(var(--rk-container),calc(100% - 40px)) !important;
  min-height:84px !important;
  display:grid !important;
  grid-template-columns:auto 1fr auto !important;
  align-items:center !important;
  gap:22px !important;
}

.site-logo{
  justify-self:end !important;
  align-items:center;
}

.site-logo img{
  width:174px !important;
  height:auto !important;
}

.site-nav{
  justify-self:center !important;
  align-items:center !important;
  gap:32px !important;
}

.site-nav a{
  padding:12px 0 !important;
  font-size:14px !important;
}

.site-nav a::after{
  bottom:-2px !important;
}

.site-header-actions{
  justify-self:start;
  display:flex;
  align-items:center;
  gap:10px;
}

.public-theme-toggle{
  position:static !important;
  grid-column:auto !important;
  min-width:112px;
  padding:0 14px !important;
  border-radius:12px !important;
  box-shadow:none !important;
}

.account-button{
  min-height:42px !important;
  padding:0 18px !important;
  border-radius:12px !important;
  font-size:14px !important;
  box-shadow:0 12px 24px rgba(49,87,226,.16) !important;
}

html[data-theme="dark"] .site-header{
  background:rgba(23,29,43,.92) !important;
}

html[data-theme="dark"] .site-nav a{
  color:var(--rk-text) !important;
}

@media(max-width:980px){
  .site-header-inner{
    width:calc(100% - 24px) !important;
    gap:14px !important;
  }

  .site-logo img{
    width:150px !important;
  }

  .site-nav{
    gap:18px !important;
  }

  .public-theme-toggle{
    min-width:auto;
  }
}

@media(max-width:760px){
  .site-header-inner{
    grid-template-columns:auto 1fr auto !important;
    min-height:74px !important;
    gap:10px !important;
  }

  .site-logo{
    grid-column:3 !important;
    justify-self:end !important;
  }

  .site-menu-toggle{
    display:flex !important;
    align-items:center;
    justify-content:center;
    width:42px;
    height:42px;
    grid-column:2 !important;
    justify-self:center !important;
    border:1px solid var(--rk-border);
    border-radius:12px;
    color:var(--rk-text);
    background:var(--rk-surface);
    font-size:21px;
  }

  .site-header-actions{
    grid-column:1 !important;
    justify-self:start !important;
    gap:8px;
  }

  .account-button{
    min-height:40px !important;
    padding:0 12px !important;
    font-size:14px !important;
  }

  .public-theme-toggle{
    width:40px;
    min-width:40px;
    padding:0 !important;
  }

  .public-theme-toggle span[data-theme-label]{
    display:none;
  }

  .site-nav{
    top:calc(100% + 8px) !important;
    right:0 !important;
    left:0 !important;
    z-index:40;
    padding:14px !important;
    border-radius:16px !important;
  }

  .site-nav a{
    text-align:center;
    padding:12px 0 !important;
  }
}


/* ===== Homepage header and blog heading alignment — v35 ===== */

.site-header-inner{
  direction:ltr;
  grid-template-columns:auto minmax(280px,1fr) auto !important;
  grid-template-areas:"account nav right" !important;
}

.site-header-right{
  grid-area:right;
  justify-self:end;
  direction:rtl;
  display:flex;
  align-items:center;
  gap:14px;
}

.site-logo{
  justify-self:auto !important;
}

.site-nav{
  grid-area:nav;
  justify-self:end !important;
  direction:rtl;
}

.account-button{
  grid-area:account;
  justify-self:start;
}

.public-theme-toggle,
.account-button{
  width:128px !important;
  min-width:128px !important;
  min-height:42px !important;
  height:42px !important;
  padding:0 14px !important;
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
  gap:7px;
  border-radius:12px !important;
  font-size:14px !important;
  line-height:1 !important;
  white-space:nowrap;
}

.public-theme-toggle{
  position:static !important;
  color:var(--rk-text);
  background:var(--rk-surface);
  box-shadow:none !important;
}

.account-button{
  box-shadow:0 12px 24px rgba(49,87,226,.16) !important;
}

.blog-heading{
  direction:ltr;
}

.blog-heading>a{
  order:1;
  direction:rtl;
  align-self:center;
  margin-right:auto;
  text-align:left;
}

.blog-heading>div{
  order:2;
  direction:rtl;
  margin-left:auto;
  text-align:right;
}

.blog-heading h2,
.blog-heading p{
  text-align:right;
}

@media(max-width:980px){
  .site-header-inner{
    grid-template-columns:auto minmax(180px,1fr) auto !important;
  }

  .site-header-right{
    gap:9px;
  }

  .public-theme-toggle,
  .account-button{
    width:112px !important;
    min-width:112px !important;
    padding:0 10px !important;
    font-size:14px !important;
  }
}

@media(max-width:760px){
  .site-header-inner{
    direction:ltr;
    grid-template-columns:auto 42px minmax(0,1fr) !important;
    grid-template-areas:
      "account menu right"
      "nav nav nav" !important;
  }

  .site-header-right{
    grid-area:right;
    width:100%;
    min-width:0;
    justify-content:flex-end;
    gap:7px;
  }

  .site-logo{
    min-width:0;
  }

  .site-logo img{
    width:112px !important;
  }

  .site-menu-toggle{
    grid-area:menu !important;
    grid-column:auto !important;
    justify-self:center !important;
  }

  .site-nav{
    grid-area:nav;
    justify-self:stretch !important;
  }

  .account-button{
    grid-area:account !important;
    justify-self:start !important;
  }

  .public-theme-toggle,
  .account-button{
    width:88px !important;
    min-width:88px !important;
    height:40px !important;
    min-height:40px !important;
    padding:0 7px !important;
    font-size:14px !important;
  }

  .public-theme-toggle span[data-theme-label]{
    display:inline !important;
  }
}

@media(max-width:430px){
  .site-header-inner{
    width:calc(100% - 16px) !important;
    gap:6px !important;
  }

  .site-header-right{
    gap:5px;
  }

  .site-logo img{
    width:92px !important;
  }

  .public-theme-toggle,
  .account-button{
    width:76px !important;
    min-width:76px !important;
    padding:0 5px !important;
    font-size:14px !important;
  }

  .public-theme-toggle span[data-theme-icon]{
    display:none;
  }
}


/* ===== Homepage centered navigation and new logo — v37 ===== */

.site-header-inner{
  direction:ltr;
  grid-template-columns:minmax(240px,1fr) auto minmax(240px,1fr) !important;
  grid-template-areas:"actions nav brand" !important;
  align-items:center !important;
  gap:20px !important;
}

.site-header-brand{
  grid-area:brand;
  justify-self:end;
  direction:rtl;
  display:flex;
  align-items:center;
}

.site-logo{
  display:flex;
  align-items:center;
  justify-content:flex-end;
}

.site-logo img{
  width:218px !important;
  max-width:100%;
  height:auto !important;
  display:block;
}

.site-nav{
  grid-area:nav;
  justify-self:center !important;
  justify-content:center !important;
  direction:rtl;
  gap:32px !important;
  margin:0 !important;
}

.site-nav a{
  min-width:max-content;
  text-align:center;
}

.site-header-actions{
  grid-area:actions;
  justify-self:start !important;
  direction:rtl;
  display:flex;
  align-items:center;
  gap:10px;
}

.public-theme-toggle,
.account-button{
  width:128px !important;
  min-width:128px !important;
  height:42px !important;
  min-height:42px !important;
  padding:0 13px !important;
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
  gap:7px;
  border-radius:12px !important;
  font-size:14px !important;
  line-height:1 !important;
  white-space:nowrap;
}

.public-theme-toggle{
  position:static !important;
  color:var(--rk-text);
  background:var(--rk-surface);
  box-shadow:none !important;
}

.account-button{
  box-shadow:0 12px 24px rgba(49,87,226,.16) !important;
}

html[data-theme="dark"] .public-theme-toggle{
  color:var(--rk-text);
  background:var(--rk-surface-2);
  border-color:var(--rk-border);
}

@media(max-width:1080px){
  .site-header-inner{
    grid-template-columns:minmax(205px,1fr) auto minmax(205px,1fr) !important;
    gap:14px !important;
  }

  .site-logo img{
    width:190px !important;
  }

  .site-nav{
    gap:20px !important;
  }

  .public-theme-toggle,
  .account-button{
    width:112px !important;
    min-width:112px !important;
    padding:0 9px !important;
    font-size:14px !important;
  }
}

@media(max-width:820px){
  .site-header-inner{
    grid-template-columns:auto 42px minmax(0,1fr) !important;
    grid-template-areas:
      "actions menu brand"
      "nav nav nav" !important;
    gap:9px !important;
  }

  .site-header-brand{
    grid-area:brand;
    min-width:0;
  }

  .site-logo img{
    width:130px !important;
  }

  .site-menu-toggle{
    grid-area:menu !important;
    grid-column:auto !important;
    justify-self:center !important;
  }

  .site-nav{
    grid-area:nav;
    justify-self:stretch !important;
    width:100%;
  }

  .site-header-actions{
    grid-area:actions;
    justify-self:start !important;
    gap:6px;
  }

  .public-theme-toggle,
  .account-button{
    width:86px !important;
    min-width:86px !important;
    height:40px !important;
    min-height:40px !important;
    padding:0 6px !important;
    font-size:14px !important;
  }
}

@media(max-width:420px){
  .site-header-inner{
    width:calc(100% - 14px) !important;
    grid-template-columns:auto 38px minmax(0,1fr) !important;
    gap:5px !important;
  }

  .site-logo img{
    width:96px !important;
  }

  .site-menu-toggle{
    width:38px !important;
    height:38px !important;
  }

  .public-theme-toggle{
    width:40px !important;
    min-width:40px !important;
    padding:0 !important;
  }

  .public-theme-toggle span[data-theme-label]{
    display:none !important;
  }

  .account-button{
    width:76px !important;
    min-width:76px !important;
    padding:0 5px !important;
    font-size:14px !important;
  }
}


/* ===== Homepage soft visual redesign — v47 ===== */

:root{
  --home-page-bg:#edf3f7;
  --home-page-bg-soft:#f4f8fb;
  --home-panel-bg:rgba(249,252,254,.94);
  --home-panel-border:#d8e2e9;
  --home-card-bg:rgba(255,255,255,.78);
  --home-card-border:#dce6ec;
  --home-shadow:0 18px 50px rgba(32,67,85,.075);
  --home-card-shadow:0 8px 24px rgba(35,71,89,.055)
}

body{
  background:
    radial-gradient(circle at 8% 38%,rgba(72,168,211,.09),transparent 26%),
    radial-gradient(circle at 92% 72%,rgba(45,183,157,.07),transparent 24%),
    linear-gradient(180deg,var(--home-page-bg-soft),var(--home-page-bg));
}

main{
  position:relative;
  flex:1;
  background:
    linear-gradient(
      180deg,
      rgba(224,244,253,.5) 0,
      rgba(242,247,250,.74) 250px,
      rgba(237,243,247,.96) 100%
    );
}

.site-header{
  background:rgba(255,255,255,.92);
  border-bottom-color:#dce5eb;
  box-shadow:0 7px 28px rgba(30,63,80,.055);
  backdrop-filter:blur(14px);
}

.site-hero{
  border-bottom:1px solid rgba(103,157,182,.14);
  box-shadow:inset 0 -18px 38px rgba(50,112,139,.045);
}

.site-hero-content{
  background:rgba(250,253,255,.7);
  border-color:rgba(255,255,255,.88);
  box-shadow:
    0 20px 52px rgba(33,91,118,.085),
    inset 0 1px 0 rgba(255,255,255,.9);
}

.home-sections{
  position:relative;
  margin-top:28px;
  margin-bottom:54px;
  gap:22px;
}

.home-panel{
  position:relative;
  overflow:hidden;
  padding:25px;
  border-color:var(--home-panel-border);
  border-radius:18px;
  background:linear-gradient(150deg,rgba(255,255,255,.82),var(--home-panel-bg));
  box-shadow:var(--home-shadow);
}

.home-panel::before{
  content:"";
  position:absolute;
  top:0;
  right:28px;
  left:28px;
  height:3px;
  border-radius:0 0 8px 8px;
  background:linear-gradient(90deg,transparent,rgba(3,155,216,.52),rgba(25,183,157,.42),transparent);
}

.featured-panel{
  background:
    radial-gradient(circle at 100% 0,rgba(44,170,219,.10),transparent 34%),
    linear-gradient(145deg,rgba(252,254,255,.94),rgba(240,248,252,.96));
}

.blog-panel{
  background:
    radial-gradient(circle at 0 0,rgba(67,126,182,.075),transparent 31%),
    linear-gradient(145deg,rgba(252,254,255,.95),rgba(244,248,251,.97));
}

.home-section-head{
  margin-bottom:17px;
  padding-bottom:15px;
  border-bottom:1px solid rgba(126,151,164,.26);
}

.blog-heading{
  padding-bottom:15px;
  border-bottom-color:rgba(126,151,164,.26);
}

.home-section-head h2{color:#253543}
.home-section-head p{color:#7d8c96}

.section-head-icon{
  border:1px solid rgba(3,155,216,.10);
  background:linear-gradient(145deg,#eefafe,#e5f4fa);
  box-shadow:0 8px 18px rgba(3,155,216,.07);
}

.featured-grid{gap:13px}

.featured-card,
.home-blog-card{
  border-color:var(--home-card-border);
  background:var(--home-card-bg);
  box-shadow:var(--home-card-shadow);
  backdrop-filter:blur(8px);
}

.featured-card:hover,
.home-blog-card:hover{
  border-color:rgba(3,155,216,.28);
  box-shadow:0 14px 32px rgba(28,77,99,.095);
}

.featured-avatar{
  border:3px solid rgba(255,255,255,.88);
  box-shadow:0 0 0 1px rgba(111,152,171,.18),0 8px 20px rgba(40,96,121,.09);
}

.home-blog-image{background:linear-gradient(145deg,#e8f5fa,#f3f8fb)}

.home-empty-state{
  min-height:248px;
  margin-top:4px;
  padding:28px 22px;
  border:1px dashed rgba(104,145,165,.30);
  border-radius:15px;
  background:
    radial-gradient(circle at 50% 18%,rgba(3,155,216,.07),transparent 36%),
    linear-gradient(180deg,rgba(255,255,255,.64),rgba(235,244,249,.76));
}
.home-empty-state.compact{min-height:225px}
.home-empty-state>span{
  border:1px solid rgba(3,155,216,.10);
  background:linear-gradient(145deg,#edf9fd,#e2f3fa);
  box-shadow:0 9px 24px rgba(3,155,216,.08);
}
.home-empty-state strong{color:#445662}
.home-empty-state small{color:#84939d}

.site-footer{
  min-height:112px;
  border-top:1px solid rgba(255,255,255,.06);
  background:
    radial-gradient(circle at 50% 0,rgba(3,155,216,.08),transparent 40%),
    linear-gradient(180deg,#202b34,#192229);
}

html[data-theme="dark"]{
  --home-page-bg:#0c131d;
  --home-page-bg-soft:#111a26;
  --home-panel-bg:rgba(23,31,43,.94);
  --home-panel-border:#2e3b4b;
  --home-card-bg:rgba(29,39,53,.86);
  --home-card-border:#344355;
  --home-shadow:0 20px 52px rgba(0,0,0,.28);
  --home-card-shadow:0 10px 28px rgba(0,0,0,.18)
}

html[data-theme="dark"] body{
  background:
    radial-gradient(circle at 8% 38%,rgba(65,137,205,.10),transparent 26%),
    radial-gradient(circle at 92% 72%,rgba(36,159,141,.08),transparent 24%),
    linear-gradient(180deg,var(--home-page-bg-soft),var(--home-page-bg));
}

html[data-theme="dark"] main{
  background:linear-gradient(180deg,rgba(18,31,44,.88) 0,rgba(14,23,34,.94) 250px,rgba(12,19,29,.98) 100%);
}

html[data-theme="dark"] .site-header{
  background:rgba(20,28,40,.92)!important;
  border-bottom-color:#2d3a4b!important;
}

html[data-theme="dark"] .home-panel,
html[data-theme="dark"] .featured-panel,
html[data-theme="dark"] .blog-panel{
  color:var(--rk-text);
  border-color:var(--home-panel-border)!important;
  background:
    radial-gradient(circle at 100% 0,rgba(63,129,185,.10),transparent 34%),
    linear-gradient(145deg,rgba(25,34,47,.96),rgba(20,29,41,.98))!important;
  box-shadow:var(--home-shadow);
}

html[data-theme="dark"] .home-section-head{border-bottom-color:rgba(133,154,178,.20)}
html[data-theme="dark"] .home-section-head h2,
html[data-theme="dark"] .home-empty-state strong,
html[data-theme="dark"] .featured-info strong,
html[data-theme="dark"] .home-blog-copy h3{color:#eef4ff!important}
html[data-theme="dark"] .home-section-head p,
html[data-theme="dark"] .home-empty-state small,
html[data-theme="dark"] .featured-info span,
html[data-theme="dark"] .featured-info small,
html[data-theme="dark"] .home-blog-copy p,
html[data-theme="dark"] .home-blog-copy time{color:#a9b5c5!important}

html[data-theme="dark"] .featured-card,
html[data-theme="dark"] .home-blog-card{
  border-color:var(--home-card-border)!important;
  background:var(--home-card-bg)!important;
  box-shadow:var(--home-card-shadow);
}

html[data-theme="dark"] .home-empty-state{
  border-color:rgba(126,153,180,.24);
  background:
    radial-gradient(circle at 50% 18%,rgba(71,136,202,.09),transparent 36%),
    linear-gradient(180deg,rgba(29,39,53,.74),rgba(22,31,44,.84));
}

@media(max-width:760px){
  .home-sections{margin-top:17px;margin-bottom:38px;gap:15px}
  .home-panel{padding:17px;border-radius:15px}
  .home-panel::before{right:18px;left:18px}
  .home-empty-state,.home-empty-state.compact{min-height:205px}
}


/* ===== Public blog visual redesign — v68 ===== */

.public-blog-page-body main,
.public-post-page-body main{
  flex:1;
}

.public-blog-page-body .site-header,
.public-post-page-body .site-header{
  min-height:82px;
}

.public-blog-page-body .compact-header .site-header-inner,
.public-post-page-body .compact-header .site-header-inner{
  min-height:82px!important;
}

.public-blog-page-body .public-blog-main{
  width:min(1440px,calc(100% - 40px))!important;
  max-width:1440px!important;
  margin:24px auto 56px!important;
}

.public-blog-page-body .public-blog-page{
  display:block;
}

.public-blog-page-body .public-blog-hero{
  min-height:230px;
  padding:36px 48px;
  display:grid;
  grid-template-columns:minmax(0,1fr) 360px;
  align-items:center;
  gap:38px;
  position:relative;
  overflow:hidden;
  border:1px solid rgba(96,169,204,.18);
  border-radius:24px;
  color:#fff;
  background:
    radial-gradient(
      circle at 12% 24%,
      rgba(255,255,255,.16),
      transparent 28%
    ),
    radial-gradient(
      circle at 88% 82%,
      rgba(35,222,187,.18),
      transparent 32%
    ),
    linear-gradient(135deg,#078fc8,#096d9f);
  box-shadow:0 22px 54px rgba(19,91,126,.17);
  text-align:right;
}

.public-blog-page-body .public-blog-hero::before{
  content:"";
  width:360px;
  height:360px;
  position:absolute;
  top:-235px;
  right:-85px;
  border:1px solid rgba(255,255,255,.15);
  border-radius:50%;
}

.public-blog-page-body .public-blog-hero::after{
  content:"";
  width:260px;
  height:260px;
  position:absolute;
  bottom:-170px;
  left:-40px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:50%;
}

.public-blog-hero-copy{
  position:relative;
  z-index:2;
}

.public-blog-page-body .public-blog-eyebrow{
  display:block;
  color:#d9f5ff;
  font-size:14px;
  font-weight:800;
  letter-spacing:3px;
}

.public-blog-page-body .public-blog-hero h1{
  margin:12px 0 9px;
  color:#fff;
  font-size:34px;
  letter-spacing:-1px;
}

.public-blog-page-body .public-blog-hero p{
  max-width:680px;
  margin:0;
  color:rgba(239,250,255,.88);
  font-size:14px;
  line-height:2;
}

.public-blog-hero-meta{
  margin-top:22px;
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:10px;
}

.public-blog-hero-meta>span{
  min-height:36px;
  padding:0 13px;
  display:inline-flex;
  align-items:center;
  gap:6px;
  border:1px solid rgba(255,255,255,.18);
  border-radius:10px;
  color:rgba(255,255,255,.88);
  background:rgba(255,255,255,.09);
  font-size:14px;
  backdrop-filter:blur(8px);
}

.public-blog-hero-meta b{
  color:#fff;
  font-size:14px;
}

.public-blog-hero-art{
  height:165px;
  position:relative;
  z-index:2;
}

.public-blog-art-sheet{
  width:215px;
  height:132px;
  padding:22px;
  position:absolute;
  display:flex;
  flex-direction:column;
  gap:13px;
  border:1px solid rgba(255,255,255,.24);
  border-radius:18px;
  background:rgba(255,255,255,.13);
  box-shadow:0 22px 44px rgba(2,37,62,.20);
  backdrop-filter:blur(12px);
}

.public-blog-art-sheet i{
  display:block;
  height:8px;
  border-radius:99px;
  background:rgba(255,255,255,.55);
}

.public-blog-art-sheet i:nth-child(1){
  width:54%;
}

.public-blog-art-sheet i:nth-child(2){
  width:86%;
}

.public-blog-art-sheet i:nth-child(3){
  width:70%;
}

.public-blog-art-sheet.sheet-one{
  top:5px;
  right:20px;
  transform:rotate(5deg);
}

.public-blog-art-sheet.sheet-two{
  bottom:0;
  left:12px;
  transform:rotate(-7deg);
  opacity:.72;
}

.public-blog-art-badge{
  width:62px;
  height:62px;
  position:absolute;
  right:130px;
  bottom:32px;
  z-index:4;
  display:flex;
  align-items:center;
  justify-content:center;
  border:6px solid rgba(255,255,255,.20);
  border-radius:18px;
  color:#087eae;
  background:#fff;
  box-shadow:0 18px 36px rgba(2,37,62,.22);
  font-size:27px;
}

.public-blog-content-area{
  margin-top:24px;
  padding:25px;
  border:1px solid #dce5eb;
  border-radius:22px;
  background:
    radial-gradient(
      circle at 100% 0,
      rgba(3,155,216,.055),
      transparent 25%
    ),
    rgba(255,255,255,.78);
  box-shadow:0 16px 44px rgba(29,68,87,.07);
  backdrop-filter:blur(10px);
}

.public-blog-section-head{
  margin-bottom:20px;
  padding-bottom:17px;
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:20px;
  border-bottom:1px solid rgba(121,148,162,.22);
}

.public-blog-section-head>div>span{
  color:#079bd4;
  font-size:14px;
  font-weight:900;
}

.public-blog-section-head h2{
  margin:6px 0 5px;
  color:#243746;
  font-size:20px;
}

.public-blog-section-head p{
  margin:0;
  color:#81909a;
  font-size:14px;
}

.public-blog-count{
  flex:0 0 auto;
  padding:8px 11px;
  border:1px solid rgba(3,155,216,.13);
  border-radius:10px;
  color:#087fad;
  background:#edf8fc;
  font-size:14px;
  font-weight:900;
}

.public-blog-page-body .public-blog-grid{
  margin-top:0;
  display:grid;
  grid-template-columns:repeat(12,minmax(0,1fr));
  gap:17px;
}

.public-blog-page-body .public-blog-card{
  grid-column:span 4;
  min-width:0;
  overflow:hidden;
  border:1px solid #dce5eb;
  border-radius:18px;
  background:rgba(255,255,255,.90);
  box-shadow:0 9px 28px rgba(29,68,87,.06);
  transition:
    transform .22s ease,
    box-shadow .22s ease,
    border-color .22s ease;
}

.public-blog-page-body .public-blog-card:hover{
  transform:translateY(-4px);
  border-color:rgba(3,155,216,.28);
  box-shadow:0 18px 40px rgba(27,75,99,.11);
}

.public-blog-page-body .public-blog-card.featured{
  grid-column:1/-1;
  min-height:320px;
  display:grid;
  grid-template-columns:minmax(340px,43%) minmax(0,1fr);
}

.public-blog-page-body .public-blog-cover{
  height:220px;
  position:relative;
  overflow:hidden;
  background:
    linear-gradient(145deg,#e5f3f8,#f3f8fb);
}

.public-blog-page-body
.public-blog-card.featured
.public-blog-cover{
  height:100%;
  min-height:320px;
}

.public-blog-page-body .public-blog-cover::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(
      180deg,
      transparent 58%,
      rgba(6,27,43,.16)
    );
}

.public-blog-page-body .public-blog-cover img{
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .35s ease;
}

.public-blog-page-body .public-blog-card:hover img{
  transform:scale(1.045);
}

.public-blog-page-body .public-blog-cover.placeholder{
  display:flex;
  align-items:center;
  justify-content:center;
  color:#079bd4;
  font-size:45px;
}

.public-blog-page-body .public-blog-content{
  padding:20px;
  display:flex;
  flex-direction:column;
}

.public-blog-page-body
.public-blog-card.featured
.public-blog-content{
  padding:38px 42px;
  justify-content:center;
}

.public-blog-meta{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}

.public-blog-meta>span{
  padding:5px 8px;
  border-radius:8px;
  color:#087fae;
  background:#eaf7fc;
  font-size:14px;
  font-weight:900;
}

.public-blog-meta time{
  color:#91a0aa;
  font-size:14px;
}

.public-blog-page-body .public-blog-content h2{
  margin:13px 0 8px;
  color:#263947;
  font-size:16px;
  line-height:1.9;
}

.public-blog-page-body
.public-blog-card.featured
.public-blog-content h2{
  font-size:25px;
  line-height:1.7;
}

.public-blog-page-body .public-blog-content p{
  margin:0;
  color:#667680;
  font-size:14px;
  line-height:2.05;
}

.public-blog-page-body
.public-blog-card.featured
.public-blog-content p{
  max-width:760px;
  font-size:14px;
  line-height:2.2;
}

.public-blog-page-body .read-more{
  width:max-content;
  min-height:36px;
  margin-top:17px;
  padding:0 12px;
  display:inline-flex;
  align-items:center;
  gap:8px;
  border:1px solid rgba(3,155,216,.14);
  border-radius:10px;
  color:#087eae;
  background:#edf8fc;
  font-size:14px;
  font-weight:900;
  transition:.18s ease;
}

.public-blog-page-body .read-more:hover{
  color:#fff;
  border-color:#079bd4;
  background:#079bd4;
}

.public-blog-page-body .read-more b{
  font-size:14px;
}

.public-blog-page-body .public-empty-card{
  grid-column:1/-1;
  min-height:300px;
  padding:55px 24px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  border:1px dashed rgba(94,143,167,.32);
  border-radius:18px;
  background:
    radial-gradient(
      circle at 50% 16%,
      rgba(3,155,216,.07),
      transparent 30%
    ),
    rgba(255,255,255,.72);
}

/* Single blog post page */
.public-post-page-body .public-post-main{
  width:min(1100px,calc(100% - 40px))!important;
  max-width:1100px!important;
  margin:28px auto 58px!important;
}

.public-post-page-body .public-post-card{
  border-color:#dce5eb;
  border-radius:23px;
  background:rgba(255,255,255,.90);
  box-shadow:0 20px 55px rgba(29,68,87,.09);
}

.public-post-page-body .public-post-header{
  padding:42px 48px 34px;
  background:
    radial-gradient(
      circle at 100% 0,
      rgba(3,155,216,.08),
      transparent 34%
    );
}

.public-post-page-body .public-post-header h1{
  max-width:820px;
  margin-inline:auto;
  color:#243746;
  font-size:30px;
}

.public-post-page-body .public-post-image{
  width:calc(100% - 64px);
  max-height:520px;
  margin:0 auto;
  border-radius:18px;
  object-fit:cover;
}

.public-post-page-body .public-post-lead{
  border:1px solid rgba(3,155,216,.10);
  background:#eef8fc;
}

.public-post-page-body .public-post-body{
  color:#3d4c55;
}

/* Dark mode */
html[data-theme="dark"]
.public-blog-page-body
.public-blog-content-area,
html[data-theme="dark"]
.public-blog-page-body
.public-blog-card,
html[data-theme="dark"]
.public-blog-page-body
.public-empty-card,
html[data-theme="dark"]
.public-post-page-body
.public-post-card{
  color:var(--rk-text);
  border-color:#334154;
  background:
    radial-gradient(
      circle at 100% 0,
      rgba(66,127,188,.08),
      transparent 28%
    ),
    rgba(23,31,43,.94);
}

html[data-theme="dark"]
.public-blog-section-head{
  border-bottom-color:rgba(139,160,183,.19);
}

html[data-theme="dark"]
.public-blog-section-head h2,
html[data-theme="dark"]
.public-blog-page-body
.public-blog-content h2,
html[data-theme="dark"]
.public-post-page-body
.public-post-header h1{
  color:#eef4ff!important;
}

html[data-theme="dark"]
.public-blog-section-head p,
html[data-theme="dark"]
.public-blog-page-body
.public-blog-content p,
html[data-theme="dark"]
.public-blog-meta time,
html[data-theme="dark"]
.public-post-page-body
.public-post-body{
  color:#aab6c6!important;
}

html[data-theme="dark"]
.public-blog-count,
html[data-theme="dark"]
.public-blog-meta>span,
html[data-theme="dark"]
.public-blog-page-body
.read-more{
  color:#b9dfff;
  border-color:#3b5268;
  background:#23364a;
}

html[data-theme="dark"]
.public-blog-page-body
.read-more:hover{
  color:#fff;
  border-color:#3c8fc2;
  background:#257cae;
}

html[data-theme="dark"]
.public-post-page-body
.public-post-lead{
  color:#bfd9e8!important;
  border-color:#334f61;
  background:#1e3444;
}

/* Responsive */
@media(max-width:1050px){
  .public-blog-page-body .public-blog-hero{
    grid-template-columns:minmax(0,1fr) 280px;
  }

  .public-blog-page-body .public-blog-card{
    grid-column:span 6;
  }
}

@media(max-width:820px){
  .public-blog-page-body .public-blog-main,
  .public-post-page-body .public-post-main{
    width:calc(100% - 24px)!important;
    margin-top:16px!important;
  }

  .public-blog-page-body .public-blog-hero{
    min-height:0;
    padding:30px 24px;
    grid-template-columns:1fr;
  }

  .public-blog-hero-art{
    display:none;
  }

  .public-blog-page-body .public-blog-hero h1{
    font-size:27px;
  }

  .public-blog-content-area{
    padding:18px;
    border-radius:18px;
  }

  .public-blog-page-body .public-blog-card,
  .public-blog-page-body .public-blog-card.featured{
    grid-column:1/-1;
  }

  .public-blog-page-body .public-blog-card.featured{
    min-height:0;
    grid-template-columns:1fr;
  }

  .public-blog-page-body
  .public-blog-card.featured
  .public-blog-cover{
    height:230px;
    min-height:230px;
  }

  .public-blog-page-body
  .public-blog-card.featured
  .public-blog-content{
    padding:22px;
  }

  .public-blog-page-body
  .public-blog-card.featured
  .public-blog-content h2{
    font-size:19px;
  }

  .public-blog-page-body .public-blog-nav,
  .public-post-page-body .public-blog-nav{
    position:absolute!important;
    top:calc(100% + 8px)!important;
    right:0!important;
    left:0!important;
    display:none!important;
    padding:12px!important;
    flex-direction:column!important;
    border:1px solid var(--rk-border)!important;
    border-radius:14px!important;
    background:var(--rk-surface)!important;
    box-shadow:var(--rk-shadow)!important;
  }

  .public-blog-page-body .public-blog-nav.show,
  .public-post-page-body .public-blog-nav.show{
    display:flex!important;
  }

  .public-blog-page-body .public-blog-nav a,
  .public-post-page-body .public-blog-nav a{
    display:block!important;
    width:100%;
    padding:11px!important;
    text-align:center;
  }

  .public-post-page-body .public-post-header{
    padding:30px 20px 25px;
  }

  .public-post-page-body .public-post-header h1{
    font-size:22px;
  }

  .public-post-page-body .public-post-image{
    width:calc(100% - 32px);
    border-radius:14px;
  }
}

@media(max-width:520px){
  .public-blog-page-body .public-blog-main,
  .public-post-page-body .public-post-main{
    width:calc(100% - 16px)!important;
  }

  .public-blog-page-body .public-blog-hero{
    padding:25px 18px;
    border-radius:18px;
  }

  .public-blog-hero-meta{
    align-items:stretch;
    flex-direction:column;
  }

  .public-blog-hero-meta>span{
    width:100%;
    justify-content:center;
  }

  .public-blog-section-head{
    align-items:flex-start;
    flex-direction:column;
  }

  .public-blog-count{
    align-self:flex-start;
  }

  .public-blog-page-body .public-blog-cover,
  .public-blog-page-body
  .public-blog-card.featured
  .public-blog-cover{
    height:190px;
    min-height:190px;
  }

  .public-blog-page-body .public-blog-content,
  .public-blog-page-body
  .public-blog-card.featured
  .public-blog-content{
    padding:18px;
  }

  .public-blog-page-body
  .public-blog-card.featured
  .public-blog-content h2{
    font-size:17px;
  }

  .public-post-page-body .public-post-image{
    width:calc(100% - 20px);
  }
}


/* ===== Configurable public blog layouts — v69 ===== */

.public-blog-page-body
.public-blog-grid
.public-blog-card{
  grid-column:auto!important;
}

/* ردیفی: تک ستونه */
.public-blog-page-body
.public-blog-grid.blog-layout-row-1{
  grid-template-columns:minmax(0,1fr);
}

.public-blog-page-body
.blog-layout-row-1
.public-blog-card{
  min-height:300px;
  display:grid;
  grid-template-columns:minmax(320px,42%) minmax(0,1fr);
}

.public-blog-page-body
.blog-layout-row-1
.public-blog-cover{
  height:100%;
  min-height:300px;
}

.public-blog-page-body
.blog-layout-row-1
.public-blog-content{
  padding:34px 38px;
  justify-content:center;
}

.public-blog-page-body
.blog-layout-row-1
.public-blog-content h2{
  font-size:23px;
}

/* ردیفی: دو ستونه */
.public-blog-page-body
.public-blog-grid.blog-layout-row-2{
  grid-template-columns:repeat(2,minmax(0,1fr));
}

.public-blog-page-body
.blog-layout-row-2
.public-blog-card{
  min-height:270px;
  display:grid;
  grid-template-columns:minmax(190px,43%) minmax(0,1fr);
}

.public-blog-page-body
.blog-layout-row-2
.public-blog-cover{
  height:100%;
  min-height:270px;
}

.public-blog-page-body
.blog-layout-row-2
.public-blog-content{
  padding:22px;
  justify-content:center;
}

.public-blog-page-body
.blog-layout-row-2
.public-blog-content h2{
  font-size:17px;
}

/* ستونی: سه، چهار و پنج تایی */
.public-blog-page-body
.public-blog-grid.blog-layout-grid-3{
  grid-template-columns:repeat(3,minmax(0,1fr));
}

.public-blog-page-body
.public-blog-grid.blog-layout-grid-4{
  grid-template-columns:repeat(4,minmax(0,1fr));
}

.public-blog-page-body
.public-blog-grid.blog-layout-grid-5{
  grid-template-columns:repeat(5,minmax(0,1fr));
}

.public-blog-page-body
.blog-layout-grid-3
.public-blog-card,
.public-blog-page-body
.blog-layout-grid-4
.public-blog-card,
.public-blog-page-body
.blog-layout-grid-5
.public-blog-card{
  display:flex;
  flex-direction:column;
}

.public-blog-page-body
.blog-layout-grid-3
.public-blog-cover{
  height:220px;
}

.public-blog-page-body
.blog-layout-grid-4
.public-blog-cover{
  height:185px;
}

.public-blog-page-body
.blog-layout-grid-5
.public-blog-cover{
  height:155px;
}

.public-blog-page-body
.blog-layout-grid-4
.public-blog-content,
.public-blog-page-body
.blog-layout-grid-5
.public-blog-content{
  padding:16px;
}

.public-blog-page-body
.blog-layout-grid-4
.public-blog-content h2{
  font-size:14px;
}

.public-blog-page-body
.blog-layout-grid-5
.public-blog-content h2{
  font-size:14px;
  line-height:1.85;
}

.public-blog-page-body
.blog-layout-grid-5
.public-blog-content p{
  font-size:14px;
  line-height:1.9;
}

.public-blog-page-body
.blog-layout-grid-5
.public-blog-meta{
  align-items:flex-start;
  flex-direction:column;
  gap:7px;
}

.public-blog-page-body
.blog-layout-grid-5
.read-more{
  margin-top:13px;
}

@media(max-width:1250px){
  .public-blog-page-body
  .public-blog-grid.blog-layout-grid-5{
    grid-template-columns:repeat(4,minmax(0,1fr));
  }

  .public-blog-page-body
  .blog-layout-row-2
  .public-blog-card{
    grid-template-columns:1fr;
  }

  .public-blog-page-body
  .blog-layout-row-2
  .public-blog-cover{
    height:210px;
    min-height:210px;
  }
}

@media(max-width:1050px){
  .public-blog-page-body
  .public-blog-grid.blog-layout-grid-4,
  .public-blog-page-body
  .public-blog-grid.blog-layout-grid-5{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }

  .public-blog-page-body
  .blog-layout-row-1
  .public-blog-card{
    grid-template-columns:minmax(280px,42%) minmax(0,1fr);
  }
}

@media(max-width:820px){
  .public-blog-page-body
  .public-blog-grid.blog-layout-row-2,
  .public-blog-page-body
  .public-blog-grid.blog-layout-grid-3,
  .public-blog-page-body
  .public-blog-grid.blog-layout-grid-4,
  .public-blog-page-body
  .public-blog-grid.blog-layout-grid-5{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .public-blog-page-body
  .blog-layout-row-1
  .public-blog-card{
    min-height:0;
    grid-template-columns:1fr;
  }

  .public-blog-page-body
  .blog-layout-row-1
  .public-blog-cover{
    height:230px;
    min-height:230px;
  }

  .public-blog-page-body
  .blog-layout-row-1
  .public-blog-content{
    padding:22px;
  }
}

@media(max-width:600px){
  .public-blog-page-body
  .public-blog-grid.blog-layout-row-2,
  .public-blog-page-body
  .public-blog-grid.blog-layout-grid-3,
  .public-blog-page-body
  .public-blog-grid.blog-layout-grid-4,
  .public-blog-page-body
  .public-blog-grid.blog-layout-grid-5{
    grid-template-columns:1fr;
  }

  .public-blog-page-body
  .blog-layout-row-2
  .public-blog-cover,
  .public-blog-page-body
  .blog-layout-grid-3
  .public-blog-cover,
  .public-blog-page-body
  .blog-layout-grid-4
  .public-blog-cover,
  .public-blog-page-body
  .blog-layout-grid-5
  .public-blog-cover{
    height:210px;
    min-height:210px;
  }

  .public-blog-page-body
  .blog-layout-grid-5
  .public-blog-meta{
    align-items:center;
    flex-direction:row;
  }
}


/* ===== Animated hero visual for homepage — v70 ===== */
.site-hero{
  min-height:198px;
  isolation:isolate;
}
.site-hero::before,
.site-hero::after{
  opacity:.38;
}
.hero-visual{
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
}
.hero-grid-glow,
.hero-pulse-dot,
.hero-dashboard-card,
.hero-dashboard-center{
  position:absolute;
}
.hero-grid-glow{
  border-radius:50%;
  filter:blur(1px);
  background:radial-gradient(circle, rgba(255,255,255,.78) 0%, rgba(255,255,255,.16) 45%, rgba(255,255,255,0) 74%);
  animation:rkGlowFloat 7s ease-in-out infinite;
}
.hero-grid-glow-one{
  width:280px;
  height:280px;
  right:11%;
  top:-105px;
}
.hero-grid-glow-two{
  width:250px;
  height:250px;
  left:9%;
  bottom:-118px;
  animation-delay:-3.2s;
}
.hero-pulse-dot{
  width:12px;
  height:12px;
  border-radius:50%;
  background:#1cb8e7;
  box-shadow:0 0 0 0 rgba(28,184,231,.35);
  animation:rkPulseDot 2.8s ease-out infinite;
}
.hero-pulse-one{
  right:23%;
  top:38px;
}
.hero-pulse-two{
  left:21%;
  bottom:34px;
  animation-delay:-1.2s;
}
.hero-dashboard-card{
  width:188px;
  padding:14px 16px 12px;
  border:1px solid rgba(255,255,255,.52);
  border-radius:18px;
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
  background:linear-gradient(145deg, rgba(255,255,255,.68), rgba(255,255,255,.28));
  box-shadow:0 12px 32px rgba(32,88,118,.13);
  color:#0d506d;
  animation:rkCardFloat 6.4s ease-in-out infinite;
}
.hero-dashboard-card strong,
.hero-dashboard-card small{
  display:block;
}
.hero-dashboard-card strong{
  font-size:14px;
  font-weight:900;
}
.hero-dashboard-card small{
  margin-top:9px;
  color:#4e7686;
  font-size:14px;
}
.hero-card-performance{
  right:12%;
  top:36px;
}
.hero-card-team{
  left:12%;
  bottom:20px;
  animation-delay:-2.5s;
}
.hero-mini-bars{
  height:38px;
  margin-top:12px;
  display:flex;
  align-items:flex-end;
  gap:7px;
}
.hero-mini-bars span{
  flex:1 1 0;
  border-radius:999px 999px 6px 6px;
  background:linear-gradient(180deg, rgba(0,162,227,.28), rgba(0,162,227,.9));
  transform-origin:bottom;
  animation:rkBarPulse 2.8s ease-in-out infinite;
}
.hero-mini-bars span:nth-child(1){height:34%; animation-delay:-.3s;}
.hero-mini-bars span:nth-child(2){height:66%; animation-delay:-.8s;}
.hero-mini-bars span:nth-child(3){height:52%; animation-delay:-1.1s;}
.hero-mini-bars span:nth-child(4){height:82%; animation-delay:-1.4s;}
.hero-mini-bars span:nth-child(5){height:58%; animation-delay:-1.7s;}
.hero-team-nodes{
  height:42px;
  margin-top:12px;
  position:relative;
}
.hero-team-nodes::before,
.hero-team-nodes::after{
  content:"";
  position:absolute;
  top:21px;
  width:46px;
  height:2px;
  background:linear-gradient(90deg, rgba(23,126,165,.15), rgba(23,126,165,.5));
}
.hero-team-nodes::before{right:34px;}
.hero-team-nodes::after{left:34px;}
.hero-team-nodes span{
  position:absolute;
  top:8px;
  width:26px;
  height:26px;
  border:2px solid rgba(255,255,255,.75);
  border-radius:50%;
  background:linear-gradient(145deg,#0ec4eb,#1689c4);
  box-shadow:0 6px 14px rgba(7,123,170,.24);
  animation:rkNodeFloat 3.2s ease-in-out infinite;
}
.hero-team-nodes span:nth-child(1){right:0; animation-delay:-.2s;}
.hero-team-nodes span:nth-child(2){left:0; animation-delay:-1.1s;}
.hero-team-nodes span:nth-child(3){right:calc(50% - 13px); top:0; width:30px; height:30px; animation-delay:-1.8s;}
.hero-dashboard-center{
  inset:50% auto auto 50%;
  width:340px;
  height:140px;
  transform:translate(-50%,-50%);
}
.hero-center-ring{
  position:absolute;
  inset:50% auto auto 50%;
  border:1px solid rgba(255,255,255,.52);
  border-radius:50%;
  transform:translate(-50%,-50%);
  animation:rkRingSpin 16s linear infinite;
}
.hero-center-ring-one{width:138px;height:138px;}
.hero-center-ring-two{width:182px;height:182px; border-style:dashed; animation-direction:reverse; opacity:.85;}
.hero-center-ring-three{width:228px;height:92px; border-color:rgba(255,255,255,.34);}
.hero-curve-line{
  width:210px;
  height:68px;
  position:absolute;
  left:50%;
  top:50%;
  transform:translate(-50%,-45%);
}
.hero-curve-line::before{
  content:"";
  position:absolute;
  inset:auto 0 12px;
  height:2px;
  border-radius:99px;
  background:linear-gradient(90deg, rgba(255,255,255,.12), rgba(255,255,255,.8), rgba(255,255,255,.12));
}
.hero-curve-line i{
  position:absolute;
  width:10px;
  height:10px;
  border-radius:50%;
  background:#fff;
  box-shadow:0 0 0 4px rgba(255,255,255,.22);
  animation:rkLineBlink 2.8s ease-in-out infinite;
}
.hero-curve-line i:nth-child(1){right:8px; top:34px;}
.hero-curve-line i:nth-child(2){right:52px; top:16px; animation-delay:-.3s;}
.hero-curve-line i:nth-child(3){right:98px; top:26px; animation-delay:-.7s;}
.hero-curve-line i:nth-child(4){right:144px; top:6px; animation-delay:-1s;}
.hero-curve-line i:nth-child(5){right:188px; top:20px; animation-delay:-1.4s;}
.site-hero-content{
  max-width:620px;
  padding:0 20px;
}
.site-hero-content h1{
  text-shadow:0 8px 30px rgba(255,255,255,.42);
}
.site-hero-content p{
  text-shadow:0 3px 12px rgba(255,255,255,.32);
}
@keyframes rkGlowFloat{
  0%,100%{transform:translateY(0) scale(1); opacity:.86;}
  50%{transform:translateY(10px) scale(1.06); opacity:.56;}
}
@keyframes rkPulseDot{
  0%{transform:scale(1); box-shadow:0 0 0 0 rgba(28,184,231,.35);}
  70%{transform:scale(1.06); box-shadow:0 0 0 14px rgba(28,184,231,0);}
  100%{transform:scale(1); box-shadow:0 0 0 0 rgba(28,184,231,0);}
}
@keyframes rkCardFloat{
  0%,100%{transform:translateY(0);}
  50%{transform:translateY(-7px);}
}
@keyframes rkBarPulse{
  0%,100%{transform:scaleY(.82);}
  50%{transform:scaleY(1);}
}
@keyframes rkNodeFloat{
  0%,100%{transform:translateY(0);}
  50%{transform:translateY(-4px);}
}
@keyframes rkRingSpin{
  from{transform:translate(-50%,-50%) rotate(0deg);}
  to{transform:translate(-50%,-50%) rotate(360deg);}
}
@keyframes rkLineBlink{
  0%,100%{transform:scale(1); opacity:.9;}
  50%{transform:scale(1.3); opacity:1;}
}
@media(max-width:1100px){
  .hero-dashboard-center{width:300px;}
  .hero-dashboard-card{width:164px; padding:12px 14px;}
}
@media(max-width:860px){
  .site-hero{min-height:220px;}
  .hero-dashboard-card{opacity:.75; width:150px;}
  .hero-card-performance{right:6%; top:28px;}
  .hero-card-team{left:6%; bottom:18px;}
  .hero-dashboard-center{width:250px; height:120px;}
  .hero-center-ring-one{width:112px;height:112px;}
  .hero-center-ring-two{width:154px;height:154px;}
  .hero-center-ring-three{width:190px;height:78px;}
}
@media(max-width:640px){
  .site-hero{min-height:208px;}
  .hero-card-performance,
  .hero-card-team{
    display:none;
  }
  .hero-dashboard-center{
    width:220px;
    height:100px;
    opacity:.88;
  }
  .hero-grid-glow-one{right:-8%;}
  .hero-grid-glow-two{left:-10%;}
}
@media(prefers-reduced-motion:reduce){
  .hero-grid-glow,
  .hero-pulse-dot,
  .hero-dashboard-card,
  .hero-mini-bars span,
  .hero-team-nodes span,
  .hero-center-ring,
  .hero-curve-line i{
    animation:none!important;
  }
}


/* ===== Minimum readable text size — v76 ===== */
body{font-size:14px}
small,input,button,select,textarea{font-size:14px}

/* ===== Homepage premium dashboard redesign — release 1.2.1 ===== */
:root{
  --home-primary:#1368e8;
  --home-primary-2:#2b8cff;
  --home-cyan:#15c3d6;
  --home-navy:#0d2445;
  --home-ink:#14233d;
  --home-muted:#70819a;
  --home-border:#dce7f3;
  --home-surface:rgba(255,255,255,.92);
  --home-soft:#f5f9fd;
  --home-deep:#082f65;
}

body{
  color:var(--home-ink);
  background:
    radial-gradient(circle at 8% 22%,rgba(41,140,255,.08),transparent 26%),
    radial-gradient(circle at 90% 64%,rgba(21,195,214,.07),transparent 25%),
    #f4f8fc;
}

main{
  overflow:hidden;
  background:
    linear-gradient(180deg,rgba(244,249,254,.72),rgba(247,250,253,.96));
}

.site-header{
  min-height:112px!important;
  padding:16px 18px 12px;
  position:sticky;
  top:0;
  border:0!important;
  background:rgba(244,248,252,.80)!important;
  box-shadow:none!important;
  backdrop-filter:blur(18px) saturate(160%);
}

.site-header-inner{
  width:min(1560px,100%)!important;
  min-height:78px!important;
  padding:0 28px;
  border:1px solid rgba(210,224,238,.92);
  border-radius:22px;
  background:rgba(255,255,255,.94);
  box-shadow:
    0 16px 45px rgba(34,72,115,.09),
    inset 0 1px 0 rgba(255,255,255,.95);
}

.site-logo img{
  width:196px!important;
}

.site-nav{
  gap:44px!important;
}

.site-nav a{
  padding:26px 0 23px!important;
  color:#30415e!important;
  font-weight:800!important;
}

.site-nav a::after{
  bottom:14px!important;
  height:3px!important;
  border-radius:999px!important;
  background:linear-gradient(90deg,var(--home-primary),var(--home-primary-2))!important;
}

.site-nav a:hover,
.site-nav a.active{
  color:var(--home-primary)!important;
}

.public-theme-toggle,
.account-button{
  min-height:48px!important;
  height:48px!important;
  border-radius:14px!important;
}

.public-theme-toggle{
  width:124px!important;
  min-width:124px!important;
  border:1px solid #d9e5f1!important;
  color:#2b3e5b!important;
  background:#f9fbfd!important;
}

.public-theme-toggle:hover{
  border-color:#bcd1e7!important;
  background:#fff!important;
}

.account-button{
  width:142px!important;
  min-width:142px!important;
  position:relative;
  overflow:hidden;
  color:#fff!important;
  background:linear-gradient(135deg,#1674ee,#075bd5)!important;
  box-shadow:0 12px 28px rgba(19,104,232,.22)!important;
}

.account-button::before{
  content:"";
  width:18px;
  height:18px;
  margin-left:8px;
  display:inline-block;
  border:2px solid currentColor;
  border-radius:50%;
  box-shadow:0 8px 0 -5px currentColor;
  opacity:.95;
}

.account-button:hover{
  transform:translateY(-1px);
  box-shadow:0 15px 32px rgba(19,104,232,.28)!important;
}

.site-hero{
  width:min(1560px,calc(100% - 36px));
  min-height:318px;
  height:auto;
  margin:0 auto;
  padding:26px 46px;
  display:grid;
  grid-template-columns:minmax(260px,1fr) minmax(390px,520px) minmax(260px,1fr);
  align-items:center;
  gap:42px;
  isolation:isolate;
  overflow:hidden;
  border:1px solid rgba(183,216,245,.72);
  border-radius:30px;
  color:var(--home-ink);
  background:
    linear-gradient(105deg,rgba(227,243,255,.95),rgba(250,253,255,.98) 48%,rgba(219,239,255,.94));
  box-shadow:
    0 24px 65px rgba(43,105,164,.11),
    inset 0 1px 0 rgba(255,255,255,.95);
}

.site-hero::before,
.site-hero::after{
  display:none!important;
}

.hero-backdrop{
  position:absolute;
  inset:0;
  z-index:-1;
  overflow:hidden;
  pointer-events:none;
}

.hero-glow{
  position:absolute;
  border-radius:50%;
  filter:blur(2px);
}

.hero-glow-one{
  width:460px;
  height:460px;
  top:-260px;
  right:28%;
  background:radial-gradient(circle,rgba(63,147,255,.18),transparent 68%);
}

.hero-glow-two{
  width:370px;
  height:370px;
  bottom:-240px;
  left:4%;
  background:radial-gradient(circle,rgba(21,195,214,.14),transparent 70%);
}

.hero-dot-pattern{
  width:100px;
  height:76px;
  position:absolute;
  opacity:.34;
  background-image:radial-gradient(circle,#54a7ef 2px,transparent 2.5px);
  background-size:14px 14px;
}

.hero-dot-pattern-one{top:28px;left:25px}
.hero-dot-pattern-two{right:28px;bottom:30px}

.hero-flow-line{
  position:absolute;
  width:560px;
  height:190px;
  border:2px solid rgba(72,153,227,.16);
  border-left-color:transparent;
  border-right-color:transparent;
  border-radius:50%;
}

.hero-flow-line-one{top:65px;left:-120px;transform:rotate(-9deg)}
.hero-flow-line-two{right:-180px;bottom:-22px;transform:rotate(12deg)}

.hero-side{
  min-height:230px;
  position:relative;
  z-index:1;
}

.hero-side-team{direction:ltr}
.hero-side-performance{direction:rtl}

.hero-profile-card,
.hero-line-chart-card,
.hero-rating-card,
.hero-donut-card,
.hero-bars-card,
.hero-mini-profile{
  position:absolute;
  border:1px solid rgba(194,218,238,.88);
  background:rgba(255,255,255,.76);
  box-shadow:0 14px 32px rgba(48,105,153,.11);
  backdrop-filter:blur(10px);
}

.hero-profile-card{
  width:130px;
  height:126px;
  top:24px;
  left:10px;
  padding:24px 17px 14px;
  border-radius:18px;
}

.hero-profile-avatar{
  width:34px;
  height:34px;
  margin:0 auto 15px;
  display:block;
  position:relative;
  border-radius:50%;
  background:linear-gradient(145deg,#49a9f5,#1269da);
}

.hero-profile-avatar::after{
  content:"";
  width:52px;
  height:24px;
  position:absolute;
  left:50%;
  top:31px;
  transform:translateX(-50%);
  border-radius:22px 22px 8px 8px;
  background:linear-gradient(145deg,#55b7fb,#1d77df);
}

.hero-profile-line{
  width:48px;
  height:6px;
  margin:9px auto 0;
  display:block;
  border-radius:20px;
  background:#d4e8f8;
}

.hero-profile-line-wide{width:74px;margin-top:25px}

.hero-profile-check{
  width:38px;
  height:38px;
  position:absolute;
  top:-16px;
  right:-15px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  color:#fff;
  background:linear-gradient(145deg,#3c9bff,#0964d9);
  box-shadow:0 10px 22px rgba(25,112,222,.28);
  font-style:normal;
  font-size:20px;
  font-weight:900;
}

.hero-line-chart-card{
  width:158px;
  height:116px;
  top:55px;
  right:5px;
  padding:12px;
  border-radius:16px;
}

.hero-line-chart-card svg{width:100%;height:100%;overflow:visible}
.hero-chart-area{fill:url(#heroChartFill)}
.hero-chart-line{fill:none;stroke:#247ce9;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.hero-line-chart-card circle{fill:#fff;stroke:#247ce9;stroke-width:2.5}

.hero-rating-card{
  min-width:156px;
  right:26px;
  bottom:2px;
  padding:11px 17px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:4px;
  border-radius:14px;
  color:#1971da;
  font-size:22px;
}

.hero-rating-card .is-muted{color:#bdd8ee}

.site-hero-content{
  width:100%;
  max-width:520px;
  min-height:246px;
  margin:auto;
  padding:28px 38px 20px;
  position:relative;
  z-index:4;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  border:1px solid rgba(205,222,238,.92);
  border-radius:25px;
  color:var(--home-ink);
  background:rgba(255,255,255,.82);
  box-shadow:
    0 23px 54px rgba(35,89,139,.13),
    inset 0 1px 0 rgba(255,255,255,.96);
  backdrop-filter:blur(14px);
  text-align:center;
}

.site-hero-content::before{
  content:"";
  height:4px;
  position:absolute;
  top:-1px;
  right:70px;
  left:70px;
  border-radius:0 0 999px 999px;
  background:linear-gradient(90deg,var(--home-cyan),#456cff,var(--home-primary-2));
  box-shadow:0 4px 16px rgba(42,127,238,.20);
}

.hero-eyebrow{
  color:#146adc!important;
  font-size:14px!important;
  font-weight:900!important;
  letter-spacing:2.6px!important;
}

.site-hero h1{
  margin:11px 0 8px!important;
  color:#10233f!important;
  font-size:38px!important;
  line-height:1.35;
  letter-spacing:-1.4px;
}

.site-hero p{
  margin:0!important;
  color:#657891!important;
  font-size:14px!important;
  font-weight:600;
  line-height:2;
}

.hero-capabilities{
  width:100%;
  margin-top:22px;
  padding-top:16px;
  display:grid;
  grid-template-columns:repeat(4,1fr);
  border-top:1px solid #dce7f2;
}

.hero-capabilities span{
  min-height:42px;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#1d73df;
  border-left:1px solid #e2ebf4;
}

.hero-capabilities span:last-child{border-left:0}
.hero-capabilities svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}

.hero-donut-card{
  width:105px;
  height:105px;
  top:2px;
  right:12px;
  display:flex;
  align-items:center;
  justify-content:center;
  border:0;
  background:transparent;
  box-shadow:none;
}

.hero-donut{
  width:84px;
  height:84px;
  display:block;
  position:relative;
  border-radius:50%;
  background:conic-gradient(#0c5dbd 0 28%,#18c4d7 28% 54%,#65b5f2 54% 74%,#d4eaff 74% 100%);
  box-shadow:0 12px 26px rgba(28,108,186,.16);
}

.hero-donut::after{
  content:"";
  position:absolute;
  inset:22px;
  border-radius:50%;
  background:#eef8ff;
  box-shadow:inset 0 0 0 1px rgba(122,177,224,.24);
}

.hero-donut-axis{
  width:2px;
  height:70px;
  position:absolute;
  top:-5px;
  left:50%;
  border-radius:4px;
  background:#174f9d;
  transform:translateX(-50%);
}

.hero-bars-card{
  width:238px;
  height:170px;
  right:20px;
  bottom:0;
  padding:25px 22px 18px;
  border:0;
  background:transparent;
  box-shadow:none;
}

.hero-bars{
  height:100%;
  display:flex;
  align-items:flex-end;
  justify-content:center;
  gap:11px;
  border-bottom:2px solid rgba(91,157,217,.26);
}

.hero-bars span{
  width:22px;
  height:var(--bar);
  display:block;
  border-radius:6px 6px 1px 1px;
  background:linear-gradient(180deg,#2d93f7,#1970d9);
  box-shadow:0 7px 15px rgba(29,119,221,.16);
}

.hero-bars span:nth-child(1){opacity:.48}
.hero-bars span:nth-child(2){opacity:.62}
.hero-bars span:nth-child(3){opacity:.75}
.hero-bars span:nth-child(4){opacity:.88}

.hero-trend-line{
  width:175px;
  height:80px;
  position:absolute;
  top:-4px;
  left:6px;
  transform:skewY(-20deg) rotate(-5deg);
  border-top:2px solid #2b83ea;
  border-right:2px solid #2b83ea;
  clip-path:polygon(0 76%,24% 42%,45% 65%,68% 24%,82% 48%,100% 0,100% 8%,83% 57%,68% 35%,46% 77%,24% 54%,0 89%);
  background:#2b83ea;
  opacity:.88;
}

.hero-mini-profile{
  width:150px;
  height:75px;
  top:76px;
  left:0;
  padding:15px;
  display:flex;
  align-items:center;
  gap:13px;
  border-radius:16px;
}

.hero-mini-avatar{
  width:38px;
  height:38px;
  flex:0 0 auto;
  position:relative;
  border-radius:50%;
  background:linear-gradient(145deg,#48b8f4,#1574d9);
}

.hero-mini-avatar::after{
  content:"";
  width:50px;
  height:22px;
  position:absolute;
  left:50%;
  top:34px;
  transform:translateX(-50%);
  border-radius:18px 18px 6px 6px;
  background:#2b91e8;
}

.hero-mini-copy{min-width:62px;display:flex;flex-direction:column;gap:8px}
.hero-mini-copy i{height:6px;border-radius:20px;background:#c9e3f5}
.hero-mini-copy i:first-child{width:70px}
.hero-mini-copy i:last-child{width:46px}

.home-sections{
  width:min(1480px,calc(100% - 64px));
  margin:24px auto 48px;
  gap:22px;
}

.home-panel{
  padding:26px;
  border:1px solid var(--home-border)!important;
  border-radius:22px;
  background:rgba(255,255,255,.92)!important;
  box-shadow:
    0 16px 42px rgba(31,70,110,.08),
    inset 0 1px 0 rgba(255,255,255,.95);
}

.home-panel::before{
  right:44px;
  left:44px;
  height:2px;
  background:linear-gradient(90deg,transparent,rgba(35,126,232,.34),transparent);
}

.home-section-head{
  margin-bottom:16px;
  padding-bottom:17px;
  align-items:center;
  border-bottom:1px solid #dfe9f3;
}

.home-section-head h2{
  color:#172a47;
  font-size:19px;
  letter-spacing:-.4px;
}

.home-section-head p{
  color:#7c8da4;
  line-height:1.8;
}

.section-head-icon{
  width:46px;
  height:46px;
  border:1px solid #d6e7f7;
  border-radius:14px;
  color:#1674e7;
  background:linear-gradient(145deg,#fbfdff,#ecf6ff);
  box-shadow:0 9px 20px rgba(41,115,190,.08);
  font-size:20px;
}

.featured-grid{grid-template-columns:1fr;gap:13px}

.featured-card{
  min-height:152px;
  padding:19px 22px;
  border:1px solid #dbe8f4;
  border-radius:18px;
  background:linear-gradient(145deg,#fbfdff,#f3f9ff);
  box-shadow:0 7px 20px rgba(43,87,128,.05);
}

.featured-card:hover{
  border-color:#bad8f3;
  transform:translateY(-3px);
  box-shadow:0 16px 35px rgba(36,91,142,.10);
}

.featured-avatar{
  width:104px;
  height:104px;
  border:5px solid #fff;
  box-shadow:0 0 0 1px #c6dced,0 12px 28px rgba(38,91,138,.15);
}

.featured-info strong{color:#152844;font-size:16px}
.featured-info span{color:#71839a}
.featured-info small{color:#4e6580;font-weight:700}

.home-blog-list{gap:13px}

.home-blog-card{
  min-height:160px;
  grid-template-columns:210px minmax(0,1fr);
  border:1px solid #dbe8f4;
  border-radius:18px;
  background:#fbfdff;
  box-shadow:0 7px 20px rgba(43,87,128,.05);
  transition:.2s ease;
}

.home-blog-card:hover{
  border-color:#bad8f3;
  transform:translateY(-2px);
  box-shadow:0 15px 34px rgba(36,91,142,.10);
}

.home-blog-image{min-height:160px;background:linear-gradient(145deg,#e9f5ff,#f7fbff)}
.home-blog-copy{padding:20px 22px}
.home-blog-copy h3{color:#162943;font-size:16px}
.home-blog-copy p{color:#64778e;line-height:2}
.home-blog-copy>div a{display:inline-flex;align-items:center;gap:7px;color:#176fd9}
.home-blog-copy>div a::after{content:"←";font-size:18px}
.home-blog-copy time{color:#8a9bb0}
.blog-heading>a{display:inline-flex;align-items:center;gap:7px;color:#176fd9}
.blog-heading>a::before{content:"‹";font-size:23px;line-height:1}

.home-empty-state,
.home-empty-state.compact{
  min-height:260px;
  border:1px dashed #cbddec;
  border-radius:18px;
  background:linear-gradient(180deg,#fbfdff,#f4f9fd);
}

.site-footer{
  min-height:150px;
  position:relative;
  overflow:hidden;
  gap:10px;
  color:#b7cbe3;
  border:0;
  background:
    radial-gradient(circle at 50% -80%,rgba(31,134,242,.30),transparent 46%),
    linear-gradient(135deg,#07376d,#092b57 54%,#061f42);
}

.site-footer::before,
.site-footer::after{
  content:"";
  width:620px;
  height:180px;
  position:absolute;
  bottom:-135px;
  border:1px solid rgba(98,172,241,.15);
  border-radius:50%;
}

.site-footer::before{right:-100px;transform:rotate(9deg)}
.site-footer::after{left:-100px;transform:rotate(-9deg)}
.site-footer div,.site-footer p,.site-footer small{position:relative;z-index:2}
.site-footer strong{font-size:16px}
.site-footer p{color:#c0d1e4}
.site-footer small{color:#95b0cc}

html[data-theme="dark"] body{
  background:#09111f;
}

html[data-theme="dark"] main{
  background:linear-gradient(180deg,#101b2c,#0b1422);
}

html[data-theme="dark"] .site-header{
  background:rgba(9,17,31,.82)!important;
}

html[data-theme="dark"] .site-header-inner{
  border-color:#263752;
  background:rgba(17,27,44,.95);
  box-shadow:0 18px 48px rgba(0,0,0,.30);
}

html[data-theme="dark"] .public-theme-toggle{
  color:#e7effc!important;
  border-color:#33465f!important;
  background:#17253a!important;
}

html[data-theme="dark"] .site-hero{
  border-color:#2c4563;
  color:#edf4ff;
  background:
    radial-gradient(circle at 50% 0,rgba(43,112,196,.18),transparent 48%),
    linear-gradient(105deg,#10233a,#111c2d 48%,#0d2941)!important;
  background-blend-mode:normal;
}

html[data-theme="dark"] .site-hero-content{
  border-color:#304661!important;
  background:rgba(18,31,49,.88)!important;
  box-shadow:0 24px 58px rgba(0,0,0,.34)!important;
}

html[data-theme="dark"] .site-hero h1{color:#f1f6ff!important}
html[data-theme="dark"] .site-hero p{color:#aabbd0!important}
html[data-theme="dark"] .hero-capabilities{border-color:#33475f}
html[data-theme="dark"] .hero-capabilities span{border-color:#30435a;color:#68a9ff}

html[data-theme="dark"] .hero-profile-card,
html[data-theme="dark"] .hero-line-chart-card,
html[data-theme="dark"] .hero-rating-card,
html[data-theme="dark"] .hero-mini-profile{
  border-color:#334c68;
  background:rgba(22,39,59,.83);
  box-shadow:0 16px 34px rgba(0,0,0,.24);
}

html[data-theme="dark"] .hero-donut::after{background:#13273d}
html[data-theme="dark"] .hero-profile-line,
html[data-theme="dark"] .hero-mini-copy i{background:#36546f}

html[data-theme="dark"] .home-panel{
  border-color:#293b52!important;
  background:rgba(17,28,44,.95)!important;
  box-shadow:0 18px 45px rgba(0,0,0,.25)!important;
}

html[data-theme="dark"] .home-section-head{border-color:#2d4057}
html[data-theme="dark"] .home-section-head h2{color:#eff5ff!important}
html[data-theme="dark"] .section-head-icon{border-color:#314a66;background:#172b43}

html[data-theme="dark"] .featured-card,
html[data-theme="dark"] .home-blog-card{
  border-color:#2f435b!important;
  background:linear-gradient(145deg,#18283c,#132235)!important;
}

html[data-theme="dark"] .featured-info strong,
html[data-theme="dark"] .home-blog-copy h3{color:#edf4ff!important}
html[data-theme="dark"] .featured-info span,
html[data-theme="dark"] .featured-info small,
html[data-theme="dark"] .home-blog-copy p,
html[data-theme="dark"] .home-blog-copy time{color:#a9b9cd!important}

html[data-theme="dark"] .home-empty-state{
  border-color:#354b65;
  background:linear-gradient(180deg,#17273a,#122033);
}

@media(max-width:1180px){
  .site-header-inner{padding:0 20px}
  .site-nav{gap:24px!important}
  .site-logo img{width:166px!important}
  .site-hero{grid-template-columns:minmax(220px,1fr) minmax(350px,470px) minmax(220px,1fr);gap:22px;padding-inline:26px}
  .hero-line-chart-card{width:145px}
  .hero-bars-card{width:210px}
  .hero-mini-profile{left:-10px}
}

@media(max-width:900px){
  .site-header{min-height:96px!important;padding:10px 12px}
  .site-header-inner{min-height:74px!important;padding:0 14px;border-radius:18px}
  .site-hero{
    grid-template-columns:1fr;
    min-height:auto;
    padding:34px 24px;
  }
  .site-hero-content{grid-row:1;max-width:590px}
  .hero-side{display:none}
  .home-sections{width:min(100% - 32px,760px);grid-template-columns:1fr}
}

@media(max-width:820px){
  .site-header-inner{
    grid-template-columns:auto 42px minmax(0,1fr)!important;
    padding:0 12px;
  }
  .site-header-brand{min-width:0}
  .site-logo img{width:126px!important}
  .site-menu-toggle{border-color:#d9e5f1;background:#f8fbfe;color:#214365}
  .site-header-actions{gap:6px}
  .public-theme-toggle{width:42px!important;min-width:42px!important;padding:0!important}
  .public-theme-toggle span[data-theme-label]{display:none!important}
  .account-button{width:104px!important;min-width:104px!important;padding:0 8px!important}
  .account-button::before{display:none}
  .site-nav{border-color:#dce8f3!important;background:#fff!important}
  html[data-theme="dark"] .site-nav{border-color:#30445d!important;background:#142238!important}
}

@media(max-width:620px){
  .site-header{padding-inline:8px}
  .site-header-inner{width:100%!important;border-radius:16px}
  .site-hero{width:calc(100% - 20px);padding:24px 14px;border-radius:22px}
  .site-hero-content{min-height:230px;padding:24px 18px 16px;border-radius:20px}
  .site-hero-content::before{right:45px;left:45px}
  .site-hero h1{font-size:30px!important}
  .site-hero p{max-width:310px}
  .hero-capabilities{margin-top:18px;padding-top:14px}
  .home-sections{width:calc(100% - 20px);margin-top:16px}
  .home-panel{padding:17px;border-radius:18px}
  .home-section-head{align-items:flex-start}
  .home-section-head h2{font-size:17px}
  .section-head-icon{width:42px;height:42px}
  .featured-card{min-height:130px;padding:15px}
  .featured-avatar{width:82px;height:82px}
  .home-blog-card{grid-template-columns:1fr}
  .home-blog-image{height:190px}
  .site-footer{min-height:170px;padding:30px 18px}
}

@media(max-width:430px){
  .site-logo img{width:92px!important}
  .account-button{width:82px!important;min-width:82px!important;font-size:14px!important}
  .site-hero h1{font-size:27px!important}
  .site-hero-content{padding-inline:13px}
  .hero-capabilities svg{width:21px;height:21px}
  .featured-card{align-items:flex-start}
  .featured-avatar{width:70px;height:70px}
}

/* ===== Width alignment refinement — v86 ===== */
:root{
  --rk-public-shell:min(1480px,calc(100% - 36px));
}

.site-header-inner,
.site-hero,
.home-sections,
.public-blog-page-body .public-blog-main,
.public-post-page-body .public-post-main{
  width:var(--rk-public-shell)!important;
  max-width:1480px!important;
  box-sizing:border-box;
}

.public-blog-page-body .public-blog-main,
.public-post-page-body .public-post-main{
  margin-inline:auto!important;
}

.home-sections{
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
}

.home-panel,
.featured-grid,
.home-blog-list,
.featured-grid > *,
.home-blog-list > *,
.public-blog-page-body .public-blog-hero,
.public-blog-page-body .public-blog-content-area,
.public-blog-page-body .public-blog-grid,
.public-blog-page-body .public-blog-card{
  width:100%;
  min-width:0;
  box-sizing:border-box;
}

.public-blog-page-body .public-blog-grid{
  align-items:stretch;
}

.public-blog-page-body .public-blog-card{
  justify-self:stretch;
  align-self:stretch;
}

.public-blog-page-body .blog-layout-row-1 .public-blog-card,
.public-blog-page-body .blog-layout-row-2 .public-blog-card{
  width:100%;
}

@media(max-width:900px){
  :root{
    --rk-public-shell:calc(100% - 24px);
  }

  .home-sections{
    grid-template-columns:1fr;
  }
}

@media(max-width:620px){
  :root{
    --rk-public-shell:calc(100% - 20px);
  }
}


/* ===== Account button user icon — v82 ===== */
.account-button::before{
  content:none!important;
  display:none!important;
}

.account-button-icon{
  width:21px;
  height:21px;
  flex:0 0 21px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.9;
  stroke-linecap:round;
  stroke-linejoin:round;
  pointer-events:none;
}

.account-button>span{
  line-height:1;
}

@media(max-width:820px){
  .account-button-icon{
    width:19px;
    height:19px;
    flex-basis:19px;
  }
}


/* ===== Public header width + mobile navigation refinement — v83 ===== */
.site-header-inner{
  width:min(1840px,calc(100% - 0px))!important;
  max-width:1840px!important;
}
.site-menu-icon{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round}
@media(max-width:820px){
  .site-header{min-height:84px!important;padding:8px!important}
  .site-header-inner{
    width:100%!important;min-height:66px!important;padding:0 10px!important;display:grid!important;direction:ltr;
    grid-template-columns:auto 42px minmax(104px,1fr)!important;grid-template-areas:"actions menu brand";gap:8px!important;border-radius:17px!important
  }
  .site-header-brand{grid-area:brand;direction:rtl;justify-self:end;min-width:0}
  .site-logo{justify-self:end!important}.site-logo img{width:112px!important;max-height:50px;object-fit:contain}
  .site-menu-toggle{
    grid-area:menu;width:42px!important;height:42px!important;min-width:42px;padding:0!important;display:grid!important;place-items:center;
    align-self:center;justify-self:center!important;border:1px solid #d8e4f0!important;border-radius:12px!important;background:#f8fbfe!important;color:#214365!important
  }
  .site-header-actions{grid-area:actions;direction:rtl;justify-self:start!important;display:flex!important;align-items:center;gap:6px!important;min-width:0}
  .public-theme-toggle{width:42px!important;min-width:42px!important;height:42px!important;padding:0!important;border-radius:12px!important}
  .account-button{width:auto!important;min-width:96px!important;height:42px!important;min-height:42px!important;padding:0 10px!important;gap:6px!important;border-radius:12px!important;white-space:nowrap}
  .site-nav{
    position:absolute!important;top:calc(100% + 7px)!important;right:8px!important;left:8px!important;width:auto!important;max-width:none!important;padding:8px!important;
    display:none!important;flex-direction:column!important;align-items:stretch!important;gap:4px!important;border:1px solid #dce8f3!important;border-radius:15px!important;
    background:#fff!important;box-shadow:0 18px 45px rgba(31,62,98,.14)!important;z-index:80;direction:rtl
  }
  .site-nav.show,.site-nav.open{display:flex!important}
  .site-nav a{width:100%;padding:11px 13px!important;text-align:right;border-radius:10px}
  html[data-theme="dark"] .site-menu-toggle{border-color:#30445d!important;background:#17253a!important;color:#e7effc!important}
}
@media(max-width:430px){
  .site-header-inner{grid-template-columns:auto 40px minmax(92px,1fr)!important;padding:0 8px!important;gap:6px!important}
  .site-logo img{width:100px!important}
  .site-menu-toggle,.public-theme-toggle{width:40px!important;min-width:40px!important;height:40px!important}
  .account-button{width:40px!important;min-width:40px!important;height:40px!important;min-height:40px!important;padding:0!important}
  .account-button>span{display:none!important}.account-button-icon{width:20px;height:20px;flex-basis:20px}
}


/* ===== Definitive public mobile header — v84 ===== */
/* این بلوک عمداً در انتهای فایل قرار دارد تا قواعد قدیمی موبایل را خنثی کند. */
.public-theme-icon{
  display:inline-grid;
  place-items:center;
  width:21px;
  height:21px;
  line-height:0;
}
.public-theme-icon svg{
  display:block;
  width:21px;
  height:21px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.9;
  stroke-linecap:round;
  stroke-linejoin:round;
}

@media(max-width:820px){
  .site-header{
    min-height:76px!important;
    padding:8px 10px!important;
  }

  .site-header-inner{
    position:relative!important;
    width:100%!important;
    max-width:none!important;
    min-height:58px!important;
    margin:0!important;
    padding:8px 10px!important;
    display:grid!important;
    grid-template-columns:auto 40px minmax(0,1fr)!important;
    grid-template-areas:"actions menu brand"!important;
    align-items:center!important;
    gap:8px!important;
    direction:ltr!important;
    border-radius:16px!important;
  }

  .site-header-brand{
    grid-area:brand!important;
    width:100%;
    min-width:0;
    justify-self:stretch!important;
    display:flex!important;
    justify-content:flex-end!important;
    align-items:center!important;
    direction:rtl!important;
  }

  .site-logo{
    width:auto!important;
    min-width:0!important;
    justify-self:auto!important;
    display:flex!important;
    justify-content:flex-end!important;
  }

  .site-logo img{
    width:clamp(100px,30vw,124px)!important;
    max-width:100%!important;
    max-height:44px!important;
    object-fit:contain!important;
  }

  .site-header-actions{
    grid-area:actions!important;
    justify-self:start!important;
    display:flex!important;
    flex-direction:row!important;
    align-items:center!important;
    gap:6px!important;
    min-width:0!important;
    direction:rtl!important;
  }

  .site-menu-toggle,
  .public-theme-toggle,
  .account-button{
    width:40px!important;
    min-width:40px!important;
    height:40px!important;
    min-height:40px!important;
    padding:0!important;
    margin:0!important;
    display:grid!important;
    place-items:center!important;
    flex:0 0 40px!important;
    border-radius:11px!important;
    line-height:0!important;
  }

  .site-menu-toggle{
    grid-area:menu!important;
    grid-column:auto!important;
    align-self:center!important;
    justify-self:center!important;
    border:1px solid #d7e3ef!important;
    color:#25415f!important;
    background:#f8fbfe!important;
    box-shadow:none!important;
  }

  .site-menu-icon{
    display:block!important;
    width:21px!important;
    height:21px!important;
    fill:none!important;
    stroke:currentColor!important;
    stroke-width:1.9!important;
    stroke-linecap:round!important;
  }

  .public-theme-toggle{
    position:static!important;
    border:1px solid #d7e3ef!important;
    color:#25415f!important;
    background:#f8fbfe!important;
    box-shadow:none!important;
  }

  .public-theme-toggle span[data-theme-label]{
    display:none!important;
  }

  .public-theme-toggle span[data-theme-icon],
  .public-theme-icon{
    display:inline-grid!important;
    place-items:center!important;
    width:21px!important;
    height:21px!important;
    color:currentColor!important;
  }

  .account-button{
    border:1px solid transparent!important;
    color:#fff!important;
    background:linear-gradient(135deg,#1675ea,#1264d5)!important;
    box-shadow:0 7px 16px rgba(24,104,216,.20)!important;
  }

  .account-button>span{
    display:none!important;
  }

  .account-button-icon{
    display:block!important;
    width:21px!important;
    height:21px!important;
    flex:0 0 21px!important;
    fill:none!important;
    stroke:currentColor!important;
    stroke-width:1.9!important;
  }

  .site-nav{
    position:absolute!important;
    top:calc(100% + 8px)!important;
    right:0!important;
    left:0!important;
    width:auto!important;
    max-width:none!important;
    margin:0!important;
    padding:8px!important;
    display:none!important;
    flex-direction:column!important;
    align-items:stretch!important;
    gap:4px!important;
    direction:rtl!important;
    border:1px solid #dce7f1!important;
    border-radius:14px!important;
    background:#fff!important;
    box-shadow:0 18px 44px rgba(24,52,82,.16)!important;
    z-index:100!important;
  }

  .site-nav.show,
  .site-nav.open{
    display:flex!important;
  }

  .site-nav a{
    width:100%!important;
    padding:11px 13px!important;
    text-align:right!important;
    border-radius:9px!important;
  }

  html[data-theme="dark"] .site-menu-toggle,
  html[data-theme="dark"] .public-theme-toggle{
    border-color:#34465d!important;
    color:#e8f0fb!important;
    background:#17263a!important;
  }

  html[data-theme="dark"] .site-nav{
    border-color:#33475f!important;
    background:#142238!important;
  }
}

@media(max-width:420px){
  .site-header{
    padding:7px!important;
  }

  .site-header-inner{
    min-height:56px!important;
    padding:7px 8px!important;
    grid-template-columns:auto 38px minmax(0,1fr)!important;
    gap:6px!important;
    border-radius:15px!important;
  }

  .site-menu-toggle,
  .public-theme-toggle,
  .account-button{
    width:38px!important;
    min-width:38px!important;
    height:38px!important;
    min-height:38px!important;
    flex-basis:38px!important;
    border-radius:10px!important;
  }

  .site-logo img{
    width:clamp(94px,29vw,108px)!important;
    max-height:40px!important;
  }

  .site-header-actions{
    gap:5px!important;
  }

  .site-nav{
    top:calc(100% + 7px)!important;
  }
}


/* ===== Mobile public header + side menu — v86 ===== */
.site-nav-mobile-head,
.site-menu-backdrop{
  display:none;
}

@media(max-width:820px){
  html.site-menu-open,
  body.site-menu-open{
    overflow:hidden!important;
  }

  .site-header{
    min-height:76px!important;
    padding:8px!important;
  }

  .site-header-inner{
    position:relative!important;
    width:100%!important;
    max-width:none!important;
    min-height:58px!important;
    margin:0!important;
    padding:8px 10px!important;
    display:grid!important;
    grid-template-columns:40px auto minmax(0,1fr)!important;
    grid-template-areas:"menu actions brand"!important;
    align-items:center!important;
    column-gap:6px!important;
    direction:ltr!important;
    border-radius:16px!important;
  }

  .site-header-brand{
    grid-area:brand!important;
    width:100%!important;
    min-width:0!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    justify-self:stretch!important;
    direction:rtl!important;
  }

  .site-logo{
    width:auto!important;
    min-width:0!important;
    margin:0!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
  }

  .site-logo img{
    display:block!important;
    width:clamp(98px,29vw,122px)!important;
    max-width:100%!important;
    max-height:43px!important;
    object-fit:contain!important;
    object-position:right center!important;
  }

  .site-menu-toggle{
    grid-area:menu!important;
    width:40px!important;
    min-width:40px!important;
    height:40px!important;
    min-height:40px!important;
    margin:0!important;
    padding:0!important;
    display:grid!important;
    place-items:center!important;
    align-self:center!important;
    justify-self:start!important;
    border:1px solid #d7e3ef!important;
    border-radius:11px!important;
    background:#f8fbfe!important;
    color:#25415f!important;
    box-shadow:none!important;
    line-height:0!important;
    z-index:3!important;
  }

  .site-menu-icon{
    display:block!important;
    width:21px!important;
    height:21px!important;
    fill:none!important;
    stroke:currentColor!important;
    stroke-width:1.9!important;
    stroke-linecap:round!important;
  }

  .site-header-actions{
    grid-area:actions!important;
    width:auto!important;
    min-width:0!important;
    margin:0!important;
    display:flex!important;
    flex-direction:row!important;
    align-items:center!important;
    justify-content:flex-start!important;
    justify-self:start!important;
    gap:6px!important;
    direction:ltr!important;
  }

  .public-theme-toggle,
  .account-button{
    width:40px!important;
    min-width:40px!important;
    height:40px!important;
    min-height:40px!important;
    flex:0 0 40px!important;
    margin:0!important;
    padding:0!important;
    display:grid!important;
    place-items:center!important;
    border-radius:11px!important;
    line-height:0!important;
  }

  .public-theme-toggle{
    position:static!important;
    border:1px solid #d7e3ef!important;
    color:#25415f!important;
    background:#f8fbfe!important;
    box-shadow:none!important;
  }

  .public-theme-toggle span[data-theme-label]{
    display:none!important;
  }

  .public-theme-toggle span[data-theme-icon],
  .public-theme-icon{
    display:inline-grid!important;
    place-items:center!important;
    width:21px!important;
    height:21px!important;
    color:currentColor!important;
  }

  .account-button{
    border:1px solid transparent!important;
    color:#fff!important;
    background:linear-gradient(135deg,#1675ea,#1264d5)!important;
    box-shadow:0 7px 16px rgba(24,104,216,.20)!important;
  }

  .account-button>span{
    display:none!important;
  }

  .account-button-icon{
    display:block!important;
    width:21px!important;
    height:21px!important;
    flex:0 0 21px!important;
    fill:none!important;
    stroke:currentColor!important;
    stroke-width:1.9!important;
  }

  /* Side menu: slides in from the same (left) side as the hamburger button. */
  .site-nav{
    position:fixed!important;
    top:0!important;
    bottom:0!important;
    left:0!important;
    right:auto!important;
    width:min(82vw,320px)!important;
    max-width:320px!important;
    height:100dvh!important;
    margin:0!important;
    padding:14px!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    gap:6px!important;
    overflow-y:auto!important;
    overscroll-behavior:contain!important;
    direction:rtl!important;
    border:0!important;
    border-right:1px solid #dce7f1!important;
    border-radius:0 18px 18px 0!important;
    background:#fff!important;
    box-shadow:18px 0 50px rgba(17,40,68,.18)!important;
    z-index:1002!important;
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    transform:translateX(-105%)!important;
    transition:transform .28s ease,opacity .22s ease,visibility .22s ease!important;
  }

  .site-nav.show,
  .site-nav.open{
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    transform:translateX(0)!important;
  }

  .site-nav-mobile-head{
    min-height:48px!important;
    margin:0 0 6px!important;
    padding:0 2px 10px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:10px!important;
    border-bottom:1px solid #e3ebf3!important;
  }

  .site-nav-mobile-head strong{
    color:#163552!important;
    font-size:16px!important;
    font-weight:700!important;
  }

  .site-nav-close{
    width:38px!important;
    min-width:38px!important;
    height:38px!important;
    padding:0!important;
    display:grid!important;
    place-items:center!important;
    border:1px solid #d8e4ef!important;
    border-radius:10px!important;
    background:#f7fafc!important;
    color:#294967!important;
    cursor:pointer!important;
  }

  .site-nav-close svg{
    width:20px!important;
    height:20px!important;
    fill:none!important;
    stroke:currentColor!important;
    stroke-width:2!important;
    stroke-linecap:round!important;
  }

  .site-nav a{
    width:100%!important;
    min-height:44px!important;
    padding:11px 13px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    text-align:right!important;
    border-radius:10px!important;
  }

  .site-menu-backdrop{
    position:fixed!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
    margin:0!important;
    padding:0!important;
    display:block!important;
    border:0!important;
    background:rgba(8,24,42,.42)!important;
    backdrop-filter:blur(2px)!important;
    -webkit-backdrop-filter:blur(2px)!important;
    z-index:1001!important;
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    transition:opacity .22s ease,visibility .22s ease!important;
    cursor:default!important;
  }

  .site-menu-backdrop.show{
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
  }

  html[data-theme="dark"] .site-menu-toggle,
  html[data-theme="dark"] .public-theme-toggle{
    border-color:#34465d!important;
    color:#e8f0fb!important;
    background:#17263a!important;
  }

  html[data-theme="dark"] .site-nav{
    border-color:#33475f!important;
    background:#142238!important;
    box-shadow:18px 0 54px rgba(0,0,0,.34)!important;
  }

  html[data-theme="dark"] .site-nav-mobile-head{
    border-color:#2d4056!important;
  }

  html[data-theme="dark"] .site-nav-mobile-head strong{
    color:#edf4ff!important;
  }

  html[data-theme="dark"] .site-nav-close{
    border-color:#34465d!important;
    background:#17263a!important;
    color:#e8f0fb!important;
  }
}

@media(max-width:420px){
  .site-header{
    padding:7px!important;
  }

  .site-header-inner{
    min-height:56px!important;
    padding:7px 8px!important;
    grid-template-columns:38px auto minmax(0,1fr)!important;
    column-gap:5px!important;
    border-radius:15px!important;
  }

  .site-menu-toggle,
  .public-theme-toggle,
  .account-button{
    width:38px!important;
    min-width:38px!important;
    height:38px!important;
    min-height:38px!important;
    flex-basis:38px!important;
    border-radius:10px!important;
  }

  .site-header-actions{
    gap:5px!important;
  }

  .site-logo img{
    width:clamp(92px,28vw,106px)!important;
    max-height:39px!important;
  }

  .site-nav{
    width:min(86vw,306px)!important;
  }
}


/* ===== Mobile public header + polished side menu — v87 ===== */
@media(max-width:820px){
  html,
  body{
    max-width:100%!important;
    overflow-x:clip!important;
  }

  .site-header{
    width:100%!important;
    max-width:100%!important;
    min-height:76px!important;
    padding:8px!important;
    box-sizing:border-box!important;
    overflow:visible!important;
  }

  .site-header-inner{
    position:relative!important;
    width:100%!important;
    max-width:100%!important;
    min-height:58px!important;
    margin:0!important;
    padding:8px 10px!important;
    box-sizing:border-box!important;
    display:grid!important;
    grid-template-columns:42px auto minmax(12px,1fr) max-content!important;
    grid-template-areas:"menu actions . brand"!important;
    align-items:center!important;
    column-gap:10px!important;
    direction:ltr!important;
    border-radius:16px!important;
    overflow:visible!important;
  }

  .site-header-brand{
    grid-area:brand!important;
    position:static!important;
    width:auto!important;
    min-width:0!important;
    max-width:none!important;
    margin:0!important;
    padding:0!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    justify-self:end!important;
    transform:none!important;
    direction:rtl!important;
  }

  .site-logo{
    position:static!important;
    width:auto!important;
    min-width:0!important;
    max-width:none!important;
    margin:0!important;
    padding:0!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    justify-self:end!important;
    transform:none!important;
  }

  .site-logo img{
    display:block!important;
    width:clamp(96px,28vw,118px)!important;
    max-width:118px!important;
    height:auto!important;
    max-height:42px!important;
    margin:0!important;
    object-fit:contain!important;
    object-position:right center!important;
    transform:none!important;
  }

  .site-menu-toggle{
    grid-area:menu!important;
    justify-self:start!important;
    align-self:center!important;
    width:42px!important;
    min-width:42px!important;
    height:42px!important;
    min-height:42px!important;
    margin:0!important;
    padding:0!important;
    border-radius:12px!important;
  }

  .site-header-actions{
    grid-area:actions!important;
    position:static!important;
    width:auto!important;
    min-width:94px!important;
    max-width:none!important;
    margin:0!important;
    padding:0!important;
    display:flex!important;
    flex-direction:row!important;
    align-items:center!important;
    justify-content:flex-start!important;
    justify-self:start!important;
    gap:10px!important;
    direction:ltr!important;
    transform:none!important;
  }

  .public-theme-toggle,
  .account-button{
    width:42px!important;
    min-width:42px!important;
    height:42px!important;
    min-height:42px!important;
    flex:0 0 42px!important;
    margin:0!important;
    padding:0!important;
    border-radius:12px!important;
  }

  /* The drawer stays outside the layout flow, so it never creates page overflow. */
  .site-nav{
    position:fixed!important;
    inset:0 auto 0 0!important;
    width:min(82vw,304px)!important;
    max-width:304px!important;
    height:100dvh!important;
    max-height:100dvh!important;
    box-sizing:border-box!important;
    margin:0!important;
    padding:0 0 18px!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    gap:8px!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    scrollbar-width:none!important;
    -ms-overflow-style:none!important;
    overscroll-behavior:contain!important;
    direction:rtl!important;
    border:0!important;
    border-radius:0 24px 24px 0!important;
    background:#f4f8fd!important;
    box-shadow:22px 0 60px rgba(15,42,72,.22)!important;
    z-index:1002!important;
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    transform:translate3d(-102%,0,0)!important;
    transition:transform .3s cubic-bezier(.22,.8,.3,1),opacity .2s ease,visibility .2s ease!important;
    will-change:transform!important;
  }

  .site-nav::-webkit-scrollbar{
    width:0!important;
    height:0!important;
    display:none!important;
  }

  .site-nav.show,
  .site-nav.open{
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    transform:translate3d(0,0,0)!important;
  }

  .site-nav-mobile-head{
    position:relative!important;
    min-height:94px!important;
    margin:0 0 8px!important;
    padding:18px 16px!important;
    box-sizing:border-box!important;
    display:flex!important;
    align-items:flex-start!important;
    justify-content:space-between!important;
    gap:14px!important;
    border:0!important;
    border-radius:0 0 22px 0!important;
    background:linear-gradient(145deg,#0d6ee7 0%,#155ec8 58%,#194da4 100%)!important;
    box-shadow:0 12px 28px rgba(20,91,190,.18)!important;
  }

  .site-nav-mobile-head strong{
    display:block!important;
    margin:4px 0 0!important;
    color:#fff!important;
    font-size:18px!important;
    line-height:1.45!important;
    font-weight:800!important;
    letter-spacing:-.2px!important;
  }

  .site-nav-mobile-head strong::after{
    content:"RAYA KARA HRM";
    display:block;
    margin-top:5px;
    color:rgba(255,255,255,.72);
    font-family:Arial,sans-serif;
    font-size:10px;
    line-height:1.2;
    font-weight:600;
    letter-spacing:1.4px;
    direction:ltr;
    text-align:right;
  }

  .site-nav-close{
    width:38px!important;
    min-width:38px!important;
    height:38px!important;
    min-height:38px!important;
    margin:0!important;
    padding:0!important;
    display:grid!important;
    place-items:center!important;
    border:1px solid rgba(255,255,255,.28)!important;
    border-radius:12px!important;
    background:rgba(255,255,255,.14)!important;
    color:#fff!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.12)!important;
    backdrop-filter:blur(8px)!important;
    -webkit-backdrop-filter:blur(8px)!important;
  }

  .site-nav a{
    position:relative!important;
    width:auto!important;
    min-height:48px!important;
    margin:0 12px!important;
    padding:12px 15px 12px 42px!important;
    box-sizing:border-box!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    text-align:right!important;
    color:#29445f!important;
    border:1px solid transparent!important;
    border-radius:13px!important;
    background:transparent!important;
    font-size:15px!important;
    font-weight:600!important;
    transition:background .18s ease,border-color .18s ease,color .18s ease,transform .18s ease!important;
  }

  .site-nav a::after{
    content:""!important;
    position:absolute!important;
    left:16px!important;
    right:auto!important;
    top:50%!important;
    width:8px!important;
    height:8px!important;
    border:2px solid #7ba8d7!important;
    border-radius:999px!important;
    background:transparent!important;
    transform:translateY(-50%)!important;
    opacity:1!important;
  }

  .site-nav a:hover,
  .site-nav a.active{
    color:#0e61cb!important;
    border-color:#d8e8fa!important;
    background:#fff!important;
    box-shadow:0 7px 20px rgba(24,77,133,.07)!important;
    transform:translateX(2px)!important;
  }

  .site-nav a:hover::after,
  .site-nav a.active::after{
    border-color:#1772e6!important;
    background:#1772e6!important;
  }

  .site-menu-backdrop{
    position:fixed!important;
    inset:0!important;
    width:100%!important;
    height:100dvh!important;
    max-height:100dvh!important;
    margin:0!important;
    padding:0!important;
    box-sizing:border-box!important;
    border:0!important;
    background:rgba(6,19,34,.48)!important;
    backdrop-filter:blur(3px)!important;
    -webkit-backdrop-filter:blur(3px)!important;
    z-index:1001!important;
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    transition:opacity .22s ease,visibility .22s ease!important;
  }

  .site-menu-backdrop.show{
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
  }

  html[data-theme="dark"] .site-nav{
    background:#101c2d!important;
    box-shadow:22px 0 60px rgba(0,0,0,.38)!important;
  }

  html[data-theme="dark"] .site-nav-mobile-head{
    background:linear-gradient(145deg,#155fc4 0%,#174e9f 58%,#183b74 100%)!important;
  }

  html[data-theme="dark"] .site-nav a{
    color:#cbd8e8!important;
    background:transparent!important;
  }

  html[data-theme="dark"] .site-nav a:hover,
  html[data-theme="dark"] .site-nav a.active{
    color:#fff!important;
    border-color:#2a4564!important;
    background:#17283e!important;
    box-shadow:none!important;
  }
}

@media(max-width:420px){
  .site-header{
    padding:7px!important;
  }

  .site-header-inner{
    min-height:56px!important;
    padding:7px 8px!important;
    grid-template-columns:40px auto minmax(8px,1fr) max-content!important;
    column-gap:9px!important;
    border-radius:15px!important;
  }

  .site-menu-toggle,
  .public-theme-toggle,
  .account-button{
    width:40px!important;
    min-width:40px!important;
    height:40px!important;
    min-height:40px!important;
    flex-basis:40px!important;
    border-radius:11px!important;
  }

  .site-header-actions{
    min-width:89px!important;
    gap:9px!important;
  }

  .site-logo img{
    width:clamp(88px,26vw,102px)!important;
    max-width:102px!important;
    max-height:38px!important;
  }

  .site-nav{
    width:min(86vw,292px)!important;
    max-width:292px!important;
  }
}

/* ===== Mobile side menu vertical-flow correction — v88 ===== */
@media(max-width:820px){
  .site-nav{
    top:0!important;
    bottom:0!important;
    left:0!important;
    right:auto!important;
    display:flex!important;
    flex-direction:column!important;
    justify-content:flex-start!important;
    align-items:stretch!important;
    align-content:stretch!important;
    gap:8px!important;
    min-height:100dvh!important;
    height:100dvh!important;
    max-height:100dvh!important;
    padding:0 0 calc(18px + env(safe-area-inset-bottom,0px))!important;
    background:#f5f8fc!important;
  }

  .site-nav-mobile-head{
    position:sticky!important;
    top:0!important;
    z-index:2!important;
    flex:0 0 auto!important;
    width:100%!important;
    min-height:88px!important;
    margin:0 0 10px!important;
    padding:calc(16px + env(safe-area-inset-top,0px)) 16px 16px!important;
    align-items:center!important;
    border-radius:0 0 22px 0!important;
  }

  .site-nav-mobile-head strong{
    margin:0!important;
  }

  .site-nav-close{
    flex:0 0 38px!important;
  }

  .site-nav a{
    flex:0 0 auto!important;
    min-height:50px!important;
    margin:0 12px!important;
    padding:13px 16px!important;
    justify-content:flex-start!important;
    border:1px solid #e1eaf4!important;
    background:#fff!important;
    box-shadow:0 4px 14px rgba(24,61,100,.04)!important;
  }

  .site-nav a::after{
    display:none!important;
    content:none!important;
  }

  .site-nav a:hover,
  .site-nav a.active{
    color:#0e61cb!important;
    border-color:#cfe2f7!important;
    background:#eaf4ff!important;
    box-shadow:0 7px 18px rgba(26,91,165,.08)!important;
    transform:none!important;
  }

  html[data-theme="dark"] .site-nav{
    background:#101a29!important;
  }

  html[data-theme="dark"] .site-nav a{
    color:#d5e0ed!important;
    border-color:#26394f!important;
    background:#152438!important;
    box-shadow:none!important;
  }

  html[data-theme="dark"] .site-nav a:hover,
  html[data-theme="dark"] .site-nav a.active{
    color:#fff!important;
    border-color:#35608d!important;
    background:#1b3451!important;
  }
}


/* ===== Viewport-anchored mobile side menu — v89 ===== */
@media(max-width:820px){
  /*
   * The mobile nav/backdrop are moved directly below <body> by the page script.
   * These explicit viewport coordinates are intentionally repeated here after
   * all legacy header rules so no sticky/filter ancestor can offset the drawer.
   */
  body > .site-nav[data-site-nav]{
    position:fixed!important;
    inset:0 auto 0 0!important;
    width:clamp(240px,74vw,268px)!important;
    height:100vh!important;
    height:100dvh!important;
    min-height:100vh!important;
    min-height:100dvh!important;
    max-height:100dvh!important;
    margin:0!important;
    padding:0 0 calc(18px + env(safe-area-inset-bottom,0px))!important;
    border-radius:0 22px 22px 0!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    overscroll-behavior:contain!important;
    transform:translate3d(-104%,0,0)!important;
    transform-origin:left top!important;
    z-index:2147483001!important;
  }

  body > .site-nav[data-site-nav].show,
  body > .site-nav[data-site-nav].open{
    top:0!important;
    transform:translate3d(0,0,0)!important;
  }

  body > .site-nav[data-site-nav] > .site-nav-mobile-head{
    position:sticky!important;
    top:0!important;
    inset-block-start:0!important;
    width:100%!important;
    margin:0 0 10px!important;
    padding:calc(16px + env(safe-area-inset-top,0px)) 16px 16px!important;
    z-index:3!important;
  }

  body > .site-menu-backdrop[data-site-menu-backdrop]{
    position:fixed!important;
    inset:0!important;
    width:100vw!important;
    height:100vh!important;
    height:100dvh!important;
    margin:0!important;
    z-index:2147483000!important;
  }
}

/* ===== Public body/header width alignment — v104 ===== */
/*
 * Keep the public page body on the same horizontal grid as the header card.
 * Desktop header has 18px page padding on each side; mobile header uses 8px
 * (7px on very small screens), so the content shell mirrors those gutters.
 */
.site-hero,
.home-sections,
.public-blog-page-body .public-blog-main,
.public-post-page-body .public-post-main{
  width:min(1840px,calc(100% - 36px))!important;
  max-width:1840px!important;
  margin-inline:auto!important;
  box-sizing:border-box!important;
}

@media(max-width:820px){
  .site-hero,
  .home-sections,
  .public-blog-page-body .public-blog-main,
  .public-post-page-body .public-post-main{
    width:calc(100% - 16px)!important;
    max-width:none!important;
  }
}

@media(max-width:420px){
  .site-hero,
  .home-sections,
  .public-blog-page-body .public-blog-main,
  .public-post-page-body .public-post-main{
    width:calc(100% - 14px)!important;
  }
}

/* v112: unified public footer */
.site-footer{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}
.site-footer>p,.site-footer>small{margin:0;position:relative;z-index:2}
.site-footer>p a{color:#fff;font-weight:700;text-decoration:none}
.site-footer>p a:hover{text-decoration:underline}


/* ===== Locked public shell alignment — v1.15.4 =====
 * Single source of truth for public-page horizontal sizing.
 * This block intentionally lives at the end of home.css so older redesign
 * rules cannot make the blog hero/content/header drift apart again.
 */
:root{
  --rk-public-shell-locked:min(1840px,calc(100% - 36px));
}

.site-header-inner,
.site-hero,
.home-sections,
.public-blog-page-body .public-blog-main,
.public-post-page-body .public-post-main{
  width:var(--rk-public-shell-locked)!important;
  max-width:1840px!important;
  margin-inline:auto!important;
  box-sizing:border-box!important;
}

/* The two main blog boxes must always occupy the exact same shell width. */
.public-blog-page-body .public-blog-hero,
.public-blog-page-body .public-blog-content-area{
  display:block;
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  margin-left:0!important;
  margin-right:0!important;
  margin-inline:0!important;
  box-sizing:border-box!important;
}

/* Restore the hero's internal two-column layout without letting the box shrink. */
.public-blog-page-body .public-blog-hero{
  display:grid;
}

.public-blog-page-body .public-blog-grid,
.public-blog-page-body .public-blog-card,
.public-post-page-body .public-post-card{
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  box-sizing:border-box!important;
}

@media(max-width:820px){
  :root{
    --rk-public-shell-locked:calc(100% - 16px);
  }
}

@media(max-width:420px){
  :root{
    --rk-public-shell-locked:calc(100% - 14px);
  }
}
