.hx-tos .visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0}
.hx-tos .ut-hero{background:linear-gradient(135deg,var(--hx-green-50),var(--hx-green-100) 60%,var(--hx-tint-cool));padding-block:clamp(28px,3.5vw,52px)}
.hx-tos .ut-hero h1{margin:0;font-size:var(--hx-fs-2xl);font-weight:var(--hx-fw-black);line-height:var(--hx-lh-tight);letter-spacing:var(--hx-tracking-tight);color:var(--hx-green-900)}
.hx-tos .ut-date{display:inline-block;margin:14px 0 0;padding:4px 12px;border-radius:var(--hx-r-pill);background:var(--hx-card);border:1px solid var(--hx-green-200);font-size:var(--hx-fs-xs);font-weight:var(--hx-fw-semi);color:var(--hx-green-800);font-variant-numeric:tabular-nums}
.hx-tos .ut-nav{border-bottom:1px solid var(--hx-line);background:var(--hx-card);position:sticky;top:0;z-index:2}
.hx-tos .ut-nav ul{display:flex;flex-wrap:wrap;gap:var(--hx-s-2);margin:0; padding:var(--hx-s-3) 0;list-style:none}
.hx-tos .ut-nav a{display:inline-block;padding:6px 14px;border-radius:var(--hx-r-pill);border:1px solid var(--hx-line-2);font-size:var(--hx-fs-sm);font-weight:var(--hx-fw-semi);color:var(--hx-body);text-decoration:none;white-space:nowrap;transition:background var(--hx-dur) var(--hx-ease),color var(--hx-dur) var(--hx-ease),border-color var(--hx-dur) var(--hx-ease)}
.hx-tos .ut-nav a:hover{background:var(--hx-green-50);border-color:var(--hx-green-200);color:var(--hx-green-800)}
.hx-tos .ut-nav a[aria-current="page"]{background:var(--hx-green-700);border-color:var(--hx-green-700);color:var(--hx-card);cursor:default}
.hx-tos .ut-body{padding-block:clamp(32px,4.5vw,60px)}
.hx-tos .ut-cols{display:grid;grid-template-columns:minmax(0,320px) minmax(0,1fr);gap:clamp(28px,4vw,56px);align-items:start}
.hx-tos .ut-main{min-width:0;}
.hx-tos .ut-toc{position:sticky;top:clamp(56px,7vw,72px);padding:var(--hx-s-5);background:var(--hx-surface);border:1px solid var(--hx-line);border-radius:var(--hx-r-lg)}
.hx-tos .ut-toc-h{margin:0 0 var(--hx-s-3);font-size:var(--hx-fs-xs);font-weight:var(--hx-fw-bold);letter-spacing:.08em;text-transform:uppercase;color:var(--hx-muted)}
.hx-tos .ut-toc ol{margin:0;padding:0;list-style:none;counter-reset:toc;display:grid;gap:var(--hx-s-1)}
.hx-tos .ut-toc li{counter-increment:toc}
.hx-tos .ut-toc a{display:grid;grid-template-columns:auto minmax(0,1fr);gap:var(--hx-s-2);padding:var(--hx-s-2);border-radius:var(--hx-r-xs);font-size:var(--hx-fs-sm);line-height:var(--hx-lh-snug);color:var(--hx-body);text-decoration:none;transition:background var(--hx-dur) var(--hx-ease),color var(--hx-dur) var(--hx-ease)}
.hx-tos .ut-toc a::before{content:counter(toc);font-variant-numeric:tabular-nums;font-weight:var(--hx-fw-bold);color:var(--hx-green-700)}
.hx-tos .ut-toc a:hover{background:var(--hx-green-50);color:var(--hx-green-800)}
.hx-tos .ut-intro{margin:0 0 clamp(24px,3vw,32px);padding:var(--hx-s-4) var(--hx-s-5);background:var(--hx-green-50);border:1px solid var(--hx-green-100);border-radius:var(--hx-r-lg);font-size:var(--hx-fs-base);line-height:1.7;color:var(--hx-body)}
.hx-tos .ut-sec{padding-bottom:clamp(20px,2.5vw,28px);border-bottom:1px solid var(--hx-line);margin-bottom:clamp(20px,2.5vw,28px)}
.hx-tos .ut-sec:last-of-type{border-bottom:0}
.hx-tos .ut-sec h2{margin:0 0 var(--hx-s-3);font-size:var(--hx-fs-lg);font-weight:var(--hx-fw-bold);line-height:var(--hx-lh-snug);color:var(--hx-green-900);scroll-margin-top:clamp(64px,8vw,88px)}
.hx-tos .ut-sec p{margin:0 0 var(--hx-s-3);font-size:var(--hx-fs-base);line-height:1.7;color:var(--hx-body)}
.hx-tos .ut-sec p:last-child{margin-bottom:0}
.hx-tos .ut-sec ul{margin:0;padding-left:var(--hx-s-4);display:grid;gap:var(--hx-s-2);list-style:none}
.hx-tos .ut-sec li{position:relative;padding-left:var(--hx-s-3);font-size:var(--hx-fs-base);line-height:1.7;color:var(--hx-body)}
.hx-tos .ut-sec li::before{content:"";position:absolute;left:0;top:.72em;width:5px;height:5px;border-radius:50%;background:var(--hx-green-500)}
.hx-tos .ut-sec a{color:var(--hx-cta);font-weight:var(--hx-fw-semi);text-decoration:none}
.hx-tos .ut-sec a:hover{text-decoration:underline}
.hx-tos .ut-back{margin:clamp(24px,3vw,34px) 0 0;padding-top:var(--hx-s-4);border-top:1px solid var(--hx-line);font-size:var(--hx-fs-sm)}
.hx-tos .ut-back a{color:var(--hx-cta);font-weight:var(--hx-fw-semi);text-decoration:none}
.hx-tos .ut-back a:hover{text-decoration:underline}
.hx-tos a{color:var(--hx-cta);font-weight:var(--hx-fw-semi);text-decoration:none}
.hx-tos a:hover{text-decoration:underline}.
.hx-tos .ut-table thead { background: linear-gradient(135deg, #0a5c5c, #0d7a7a); color: #ffffff; }
.hx-tos .ut-table th { padding: 16px 20px; text-align: left; font-weight: 600; letter-spacing: 0.5px; }
.hx-tos .ut-table td { padding: 14px 20px; border-bottom: 1px solid #f1f5f9; }
.hx-tos .ut-table tbody tr:nth-child(even) { background: #f8fafc; }
.hx-tos .ut-table tbody tr:nth-child(odd) { background: #ffffff; }
.hx-tos .ut-table tbody tr:hover { background: #ecfdf5; transition: background 0.15s ease; }
.hx-tos .ut-table tbody tr td:first-child { font-weight: 600; color: #0a5c5c; }
.hx-tos .ut-table tbody tr td:last-child { font-weight: 500; color: #0d7a7a; }
@media (max-width:1024px){
  .hx-tos .ut-cols{grid-template-columns:1fr}
  .hx-tos .ut-toc{position:static}
  .hx-tos .ut-toc ol{grid-template-columns:repeat(2,minmax(0,1fr))}
  .hx-tos .ut-nav{position:static}
}
@media (max-width:640px){
  .hx-tos .ut-toc ol{grid-template-columns:1fr}
}
.ut-table{ width: 100%; border-collapse: collapse; margin: 16px 0 24px; font-size: 0.95rem; border-radius: 10px; overflow: scroll;display: block; box-shadow: 0 2px 8px rgba(0,0,0,0.07); }
