
body{margin:0}
a[href^="mailto:"]{text-transform:none !important;letter-spacing:.02em}
.root .prj .tb{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr)}
.root .prj .tb:has(>div:nth-child(3)){grid-template-columns:minmax(0,1.5fr) minmax(0,1.1fr) minmax(0,.8fr)}
.root .tb b{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mega .mcol ul li a{font-size:14px}


body{margin:0}
a[href^="mailto:"]{text-transform:none !important;letter-spacing:.02em}
.root .prj .tb{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr)}
.root .prj .tb:has(>div:nth-child(3)){grid-template-columns:minmax(0,1.5fr) minmax(0,1.1fr) minmax(0,.8fr)}
.root .tb b{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.soc2{display:flex;gap:10px;margin-top:4px}
.siw{position:relative;display:inline-flex}
.si{position:relative;width:46px;height:46px;border-radius:12px;border:1px solid #26354F;background:#0F1A2C;color:#D5DCE8;display:inline-flex;align-items:center;justify-content:center;overflow:hidden;transition:color .25s,border-color .25s,transform .3s cubic-bezier(.2,.7,.2,1),box-shadow .3s}
.si::before{content:'';position:absolute;inset:0;background:linear-gradient(135deg,#05C4FD,#3289ED 50%,#7A28D4);opacity:0;transition:opacity .3s}
.si svg{position:relative}
.si:hover,.si:focus-visible{color:#fff;border-color:transparent;transform:translateY(-2px);box-shadow:0 12px 24px -12px rgba(50,137,237,.7)}
.si:hover::before,.si:focus-visible::before{opacity:1}
.siw .tip{position:absolute;left:50%;bottom:calc(100% + 10px);transform:translate(-50%,6px);white-space:nowrap;background:linear-gradient(135deg,#05C4FD,#3289ED 50%,#7A28D4);color:#fff;font-family:'IBM Plex Mono',monospace;font-size:10.5px;letter-spacing:.08em;padding:6px 9px;border-radius:7px;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .2s,transform .25s cubic-bezier(.2,.7,.2,1),visibility .2s}
.siw .tip::after{content:'';position:absolute;left:50%;top:100%;margin-left:-5px;border:5px solid transparent;border-top-color:#3289ED}
.siw:hover .tip,.siw:focus-within .tip{opacity:1;visibility:visible;transform:translate(-50%,0)}
.nlf{position:relative;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;margin-top:40px;padding:24px;border:1px solid #1E2A40;border-radius:14px;background:rgba(17,26,43,.6)}
.nlf form{display:flex;gap:10px;flex:1 1 320px;max-width:460px}
.nlf input{flex:1;min-width:0;font:inherit;font-size:15px;min-height:48px;padding:0 14px;border-radius:10px;border:1px solid #2A3956;background:#0F1828;color:#F4F6FA;outline:none}
.nlf input:focus{border-color:#3289ED;box-shadow:0 0 0 4px rgba(50,137,237,.2)}

body{margin:0;background:#F7F8FA}
.legal-hero{padding-bottom:48px}.legal-heading{display:flex;flex-direction:column;gap:22px;max-width:900px}.legal-heading .h1{font-size:clamp(34px,4.4vw,64px);line-height:1.12}.legal-heading .lead{max-width:760px}.legal-date{font-size:11px;opacity:.7}
.legal-layout{display:grid;grid-template-columns:240px minmax(0,1fr);gap:64px;align-items:start}.legal-nav{position:sticky;top:120px}.legal-nav nav{display:flex;flex-direction:column;gap:16px}.legal-nav .mono{font-size:11px;margin-bottom:8px}.legal-nav a{font-size:14px;line-height:1.5;color:inherit;opacity:.75;text-decoration:none}.legal-nav a:hover{opacity:1;color:#1C66C9}
.legal-content{max-width:860px;min-width:0}.legal-content section{scroll-margin-top:120px;margin-bottom:44px}.legal-content h2{font-family:Manrope,sans-serif;font-size:clamp(21px,2.2vw,28px);line-height:1.4;margin:0 0 18px}.legal-content p,.legal-content li{font-size:16px;line-height:1.85;overflow-wrap:anywhere}.legal-content p{margin:0 0 16px}.legal-content ul{padding-left:22px;margin:0 0 20px}.legal-content li{margin-bottom:10px}.legal-content li::marker{color:#3289ED}.legal-content a:not(.btn){color:#1C66C9;text-underline-offset:3px}.dkm .legal-content a:not(.btn){color:#5FD3FC}.legal-table-wrap{max-width:100%;overflow-x:auto;margin:24px 0;border:1px solid #d5dce8;border-radius:12px}.legal-content table{width:100%;border-collapse:collapse;font-size:14px;line-height:1.7}.legal-content th,.legal-content td{padding:18px;text-align:left;vertical-align:top;border-bottom:1px solid #d5dce8}.legal-content th{font-family:Manrope,sans-serif;background:rgba(50,137,237,.07)}.legal-content td{width:50%}.legal-content tr:last-child td{border-bottom:0}.dkm .legal-table-wrap,.dkm .legal-content th,.dkm .legal-content td{border-color:#293a55}.legal-end .btn{margin-top:12px}
@media(max-width:1100px){.legal-layout{grid-template-columns:minmax(0,1fr);gap:36px}.legal-nav{position:static}.legal-nav nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.legal-nav .mono{grid-column:1/-1}.legal-content{max-width:none}}
@media(max-width:767px){.legal-hero{padding-bottom:32px}.legal-heading{gap:18px}.legal-section{padding-top:32px}.legal-content p,.legal-content li{font-size:15px;line-height:1.8}.legal-content th,.legal-content td{padding:12px;font-size:12px}.legal-nav a{font-size:13px}}

/* Same sticky boundary and active reading marker as project contents. */
.legal-content section{scroll-margin-top:var(--legal-anchor-margin,20px)}
.legal-nav nav{gap:0}.legal-nav nav>.mono{margin-bottom:20px}.legal-nav a{min-height:44px;padding:12px 0 12px 18px;border-left:2px solid transparent;opacity:1;color:#3A4558;transition:border-color .3s,color .3s}.legal-nav a:hover,.legal-nav a.cur{border-left-color:#3289ED;color:#1C66C9}.dkm .legal-nav a{color:#C9D2E0}.dkm .legal-nav a:hover,.dkm .legal-nav a.cur{color:#5FD3FC;border-left-color:#3289ED}
@media(min-width:1101px){.legal-page{overflow-x:clip}.legal-nav{top:var(--legal-toc-top,109px);max-height:calc(100dvh - var(--legal-toc-top,109px) - 24px);overflow-y:auto;overscroll-behavior:contain}}
@media(prefers-reduced-motion:reduce){.legal-nav a{transition:none}}
