:root {
--neutral-bg:       #fefefe;
--card-bg:          #ffffff;
--subtle-bg:        #f8fafc;
--border-subtle:    #e2e8f0;
--border-light:     #e2e8f0;
--text-primary:     #0f172a;
--text-secondary:   #475569;
--text-muted:       #64748b;
--accent-purple:    #7c3aed;
--accent-cyan:      #0ea5e9;
--z-header:         1000;
--z-floating:       10;
--z-overlay:        50;
--spacing-xs:       4px;
--spacing-sm:       8px;
--spacing-md:       16px;
--spacing-lg:       24px;
--spacing-xl:       32px;
--spacing-2xl:      48px;
--border-radius-sm: 6px;
--border-radius-md: 12px;
}
* {
box-sizing: border-box;
}
body {
font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
background: var(--neutral-bg);
color: var(--text-primary);
overflow-x: hidden;
line-height: 1.5;
margin: 50px;
padding: 0;
font-weight: 400;
font-size: 14px;
}
.container {
max-width: 1200px;
margin: 0 auto;
padding: 0 20px;
}
.divider {
border: none;
height: 1px;
background: var(--border-subtle);
}
a:focus-visible,
button:focus-visible {
outline: 3px solid var(--accent-cyan);
outline-offset: 3px;
border-radius: var(--border-radius-sm);
}
.mb-2         { margin-bottom: 8px; }
.text-center  { text-align: center; }
.text-left    { text-align: left; }
.text-right   { text-align: right; }
.text-bold    { font-weight: 700; }
.text-semi-bold { font-weight: 600; }
.text-normal  { font-weight: 400; }
.ol_decimal_1         { list-style-type: decimal; }
.ol_decimal_contents_1 { list-style-type: decimal; }
.ol_upper_latin_1     { list-style-type: upper-latin; }
.ol_lower_latin_1     { list-style-type: lower-latin; }
.ol_lower_latin_contents_1 { list-style-type: lower-latin; }
.ol_upper_roman_1     { list-style-type: upper-roman; }
.ol_lower_roman_1     { list-style-type: lower-roman; }
.ol_lower_roman_contents_1 { list-style-type: lower-roman; }
.ol_decimal_1 li:hover a,
.ol_lower_roman_1 li:hover a,
.ol_lower_latin_1 li:hover a,
.ol_upper_roman_1 li:hover a {
color: var(--accent-cyan);
}
code,
code.code1,
.code1 {
color: var(--accent-purple);
font-family: 'Courier New', Consolas, monospace;
background: var(--subtle-bg);
padding: 2px 4px;
border-radius: 4px;
font-size: 0.85em;
border: 1px solid var(--border-subtle);
font-weight: 500;
}
table.iconstable1,
table.iconstable2,
table.csstable3 {
margin: 16px 0;
padding: 0;
border-collapse: collapse;
width: 100%;
max-width: 100%;
background: var(--card-bg);
border: 1px solid var(--border-subtle);
}
tr.csstr1 {
vertical-align: top;
}
tr.csstr1:hover {
background: var(--subtle-bg);
}
td.csstd1 {
border: 1px solid var(--border-subtle);
padding: 8px;
vertical-align: top;
color: var(--text-secondary);
font-size: 0.85rem;
}
th.cssth1 {
border: 1px solid var(--border-subtle);
padding: 8px;
background: var(--subtle-bg);
color: var(--text-primary);
font-weight: 700;
text-align: left;
font-size: 0.85rem;
}
pre[class*="-code"] {
font-family: 'Courier New', Consolas, monospace;
font-size: 12px;
line-height: 1.5;
padding: 16px;
margin: 16px 0;
overflow-x: auto;
white-space: pre;
word-wrap: normal;
min-height: 60px;
background: var(--subtle-bg);
border: 1px solid var(--border-subtle);
border-left: 4px solid var(--border-subtle);
}
h2.cssh2 {
font-size: 1.4rem;
font-weight: 700;
color: #3C3489;
border-left: 4px solid #3C3489;
padding: 6px 0 6px 12px;
margin: 32px 0 12px 0;
border-bottom: 1px solid #CECBF6;
}
h3.cssh3 {
font-size: 1.1rem;
font-weight: 600;
color: #185FA5;
border-left: 3px solid #378ADD;
padding: 4px 0 4px 10px;
margin: 24px 0 8px 0;
}
div.mti-header {
  margin: 8px 0 10px 0;
}
a.mti-header-site {
font-family: Verdana, Geneva, sans-serif;
font-size: 0.9rem;
font-weight: 600;
letter-spacing: 0.08em;
color: #3C3489;
text-decoration: none;
display: block;
margin-bottom: 6px;
}
a.mti-header-site:hover {
color: #185FA5;
}
div.mti-header-breadcrumb {
display: flex;
align-items: center;
gap: 6px;
margin-bottom: 10px;
}
a.mti-header-parent {
font-family: Verdana, Geneva, sans-serif;
font-size: 1rem;
font-weight: 400;
color: #185FA5;
text-decoration: none;
}
a.mti-header-parent:hover {
color: #3C3489;
}
span.mti-header-sep {
color: var(--border-subtle);
font-size: 1rem;
font-weight: 300;
}
span.mti-header-title {
font-size: 0.9rem;
font-weight: 700;
color: var(--text-primary);
}
div.mti-header-hr {
height: 3px;
background: linear-gradient(to right, #3C3489 0%, #185FA5 50%, #CECBF6 100%);
border: none;
margin: 0;
}