/* Shared site components and fixes extracted from repeated HTML style blocks. */

/* Shared brand defaults and document base. Kept low-specificity so page styles can override. */
:where(:root) {
  --bg: #FFFFFF;
  --bg-2: #EEF2F5;
  --bg-3: #F7F9FB;
  --soft: #F7F9FB;
  --line: #E2E5EB;
  --line-soft: rgba(45,44,48,0.08);
  --text: #2D2C30;
  --text-mid: #4A4A4F;
  --text-dim: #726F6F;
  --purple: #372165;
  --purple-vivid: #5B3CB5;
  --purple-soft: #8A6FD9;
  --purple-tint: rgba(55,33,101,0.10);
  --purple-deep: #20124D;
  --tint: rgba(55,33,101,.07);
  --green: #009639;
  --green-bright: #39FF3E;
  --green-tint: rgba(0,150,57,0.10);
  --piazza: #E8E7E4;
  --night-blue: #0058AA;
  --sunset: #F4743B;
  --starlight: #FFD68E;
}

:where(*, *::before, *::after) {
  box-sizing: border-box;
}

:where(html, body) {
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
  color: var(--text);
  background: var(--bg);
}

:where(body) {
  margin: 0;
  line-height: 1.5;
}

* { margin: 0; padding: 0; }
body { min-height: 100vh; }
.max { max-width: 1440px; margin: 0 auto; padding: 0 32px; }

body{background:var(--soft);line-height:1.6;}
a{color:var(--purple-vivid);}
header{background:var(--bg);border-bottom:1px solid var(--line);padding:14px 30px;display:flex;align-items:center;justify-content:space-between;height: 70px;max-width: 1932px;margin: 0 auto;}
header .brand{display:flex;align-items:center;gap:50px;text-decoration:none;color:inherit;}
header .brand img{width:111px;display:block;max-width: 100%;}
.brand-text{font-size:14px;font-weight:700;letter-spacing:.02em;}
.brand-text span{color:var(--text-dim);font-weight:400;margin-left:6px;}

.breadcrumb { font-size: 12px; color: var(--text-dim); }
.breadcrumb a { color: var(--purple); text-decoration: none; }
.live-dot { display: inline-block; width: 6px; height: 6px; border-radius: 50%; background: var(--text-dim); margin-right: 8px;  }

/* xrnav-css */
#xrnav{position:relative;z-index:9000;background:#fff;border-bottom:1px solid #E2E5EB;font:600 13px/1 Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;}#xrnav .xrnav-in{display:flex;gap:2px;align-items:center;flex-wrap:wrap;padding:0 32px;max-width: 1932px;margin: 0 auto;}#xrnav a,#xrnav button{color:#2D2C30;text-decoration:none;background:none;border:0;cursor:pointer;font:inherit;padding:13px 14px;display:inline-block;line-height:1;}#xrnav .xrnav-item:hover{color:#372165;}#xrnav .xrnav-dd{position:relative;}#xrnav a.act,#xrnav .xrnav-dd.act>.xrnav-tog{color:#372165;box-shadow:inset 0 -2px 0 #372165;}#xrnav .xrnav-menu{position:absolute;top:100%;left:0;min-width:268px;background:#fff;border:1px solid #E2E5EB;border-radius:0 0 8px 8px;box-shadow:0 8px 24px rgba(0,0,0,.10);padding:6px;display:none;z-index:9998;}#xrnav .xrnav-dd:hover .xrnav-menu,#xrnav .xrnav-dd.open .xrnav-menu{display:block;}#xrnav .xrnav-menu a{display:block;padding:8px 12px;border-radius:6px;font-weight:500;white-space:nowrap;}#xrnav .xrnav-menu a:hover{background:#F2F0F7;color:#372165;}#xrnav .xrnav-menu a.act{color:#372165;background:#F2F0F7;}@media(max-width:760px){#xrnav .xrnav-in{padding:0 16px;}#xrnav .xrnav-menu{position:static;box-shadow:none;border:0;min-width:0;padding:2px 0 6px 14px;}}

/* xrfoot-fix variant 1 */
footer{line-height:1.7;}footer .ai-note-footer{margin-top:22px;line-height:1.7;}.ai-note-footer{line-height:1.7;}.foot{line-height:1.7;}

/* xrfoot-fix variant 2 */
footer{line-height:1.7;}

/* xrlang-fix variant 1 
.header-row{padding-right:108px;}@media(max-width:760px){.header-row{padding-right:92px;}}*/
.header-row, header .row {
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-right: 90px;
}

  /* Sub-page navigation bar */
  .subnav { background: var(--bg-2); border-bottom: 1px solid var(--line); padding: 14px 0; position: sticky; top: 70px; z-index: 90; }
  .subnav-row { display: flex; align-items: center; justify-content: space-between; gap: 24px; flex-wrap: wrap; }
  .subnav-back { display: inline-flex; align-items: center; gap: 8px; color: var(--purple); text-decoration: none; font-size: 13px; font-weight: 600; padding: 6px 14px; background: var(--bg); border: 1px solid var(--line); border-radius: 4px; }
  .subnav-back:hover { border-color: var(--purple); }
  .subnav-tabs { display: flex; gap: 4px; flex-wrap: wrap; }
  .subnav-tab { font-size: 12px; color: var(--text-mid); text-decoration: none; padding: 6px 12px; border-radius: 4px; }
  .subnav-tab:hover { background: var(--bg); color: var(--purple); }
  .subnav-tab.active { background: var(--purple); color: #fff; font-weight: 600; }
  header {position: sticky; top: 0; z-index: 10000; }


/* xrlang-fix variant 2 */
header .header-meta{margin-right:104px;}@media(max-width:760px){header{flex-wrap:wrap;}header .header-meta{margin-right:96px;}}

/* xrhdr-css */
.xrhdr .brand b{font-size:14px;font-weight:700;letter-spacing:.02em;}.xrhdr .brand .ctx{color:var(--text-dim);font-weight:400;margin-left:6px;}.xrhdr .bc{font-size:12.5px;color:var(--text-dim);padding-right:104px;white-space:nowrap;}.xrhdr .bc a{color:var(--purple-vivid);text-decoration:none;font-weight:600;}.xrhdr .bc a:hover{text-decoration:underline;}.wrap{padding-top:30px;}@media(max-width:760px){.xrhdr .bc{padding-right:88px;}.xrhdr .brand .ctx{display:none;}}

/* svcs-accordion-fix */
table.svcs tr.row{cursor:pointer;}
table.svcs tr.row .chevron{display:inline-block;transition:transform .2s;color:var(--text-dim);margin-right:8px;font-size:10px;}
table.svcs tr.row.open .chevron{transform:rotate(90deg);color:var(--purple);}
table.svcs tr.detail td{padding:0;border-bottom:1px solid var(--line);}
table.svcs tr.detail .panel{max-height:0;overflow:hidden;transition:max-height .35s ease;background:var(--bg-3);}
table.svcs tr.detail.open .panel{max-height:800px;}
table.svcs tr.detail .panel-inner{padding:22px 28px;}
table.svcs .panel-grid{display:grid;grid-template-columns:160px 1fr;gap:18px 24px;}
table.svcs .panel-grid .k{font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:var(--text-dim);font-weight:600;}
table.svcs .panel-grid .v{font-size:13px;line-height:1.6;color:var(--text);}
table.svcs .panel-grid .v.title{font-size:16px;font-weight:700;color:var(--purple);}
table.svcs .panel-grid .v ol{padding-left:18px;margin-top:4px;}
table.svcs .panel-grid .v code{background:var(--purple-tint,#f0edff);color:var(--purple);padding:1px 6px;border-radius:2px;font-size:12px;}

/* xrbrand-css */
#xrbrand{display:flex;align-items:center;gap:10px;padding:14px 30px;background:#fff;border-bottom:1px solid #E2E5EB;}#xrbrand img{width:111px;display:block;}#xrbrand a{display:flex;align-items:center;gap:50px;text-decoration:none;font-weight:700;font-size:14px;letter-spacing:.02em;color:#2D2C30;}#xrbrand a:hover .xb-t{color:#372165;}#xrbrand .xb-c{color:#726F6F;font-weight:400;margin-left:6px;}@media(max-width:760px){#xrbrand{padding:12px 16px;}}

#xr-lang{
  z-index: 9999999999999999 !important;
}

@media(max-width:700px){.brand-text,.breadcrumb, .header-meta{display: none;}}