:root{--bg: #0d0d0d;--surface: #1a1a1a;--border: #2a2a2a;--border-strong: #3a3a3a;--text: #e8e8e8;--text-muted: #999;--text-dim: #777;--link: #fff;--accent: #a78bfa;--accent-soft: rgba(167, 139, 250, .15);--sidebar-width: 280px}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:system-ui,-apple-system,Segoe UI,Apple SD Gothic Neo,Malgun Gothic,sans-serif;line-height:1.65;color:var(--text);background:var(--bg)}html{scrollbar-width:thin;scrollbar-color:var(--border-strong) var(--bg)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:5px;border:2px solid var(--bg)}::-webkit-scrollbar-thumb:hover{background:var(--accent)}::-webkit-scrollbar-corner{background:var(--bg)}.sidebar-nav,.content pre{scrollbar-color:var(--border-strong) var(--surface)}.sidebar-nav::-webkit-scrollbar-track,.content pre::-webkit-scrollbar-track{background:var(--surface)}.sidebar-nav::-webkit-scrollbar-thumb,.content pre::-webkit-scrollbar-thumb{background:var(--border-strong);border:2px solid var(--surface)}.sidebar-nav::-webkit-scrollbar-thumb:hover,.content pre::-webkit-scrollbar-thumb:hover{background:var(--accent)}main{max-width:1100px;margin:0 auto;padding:2rem 1.5rem 4rem}section{margin:3rem 0}h1,h2,h3{line-height:1.3;margin:0 0 .75rem;color:#fff}h1{font-size:2rem}h2{font-size:1.5rem}h3{font-size:1.2rem}p,li{margin:.5rem 0}a{color:var(--link);text-decoration:underline;text-underline-offset:3px}a:hover{text-decoration-thickness:2px}.card{border:1px solid var(--border);background:var(--surface);padding:1rem 1.25rem;margin:.75rem 0;border-radius:4px}.card .title{font-weight:700;font-size:1.1rem;margin-bottom:.25rem;color:#fff}.card .meta{font-size:.9rem;color:var(--text-muted);margin-bottom:.5rem}.card .impact{margin:.5rem 0}.card .tags{font-size:.85rem;color:var(--text-dim)}a.card-link{display:block;color:inherit;text-decoration:none;transition:border-color .18s ease,transform .18s ease,box-shadow .18s ease}a.card-link:hover{border-color:var(--accent);transform:translateY(-2px);box-shadow:0 4px 16px var(--accent-soft)}.btn{display:inline-block;padding:.6rem 1.2rem;border:1px solid #fff;color:#fff;text-decoration:none;margin-top:.75rem;background:transparent;transition:background .15s ease,color .15s ease,border-color .15s ease}.btn:hover{background:var(--accent);color:var(--bg);border-color:var(--accent)}.btn-cta{display:inline-block;padding:.6rem 1.2rem;border:1px solid #fff;color:#fff;margin-top:.75rem;background:transparent;transition:background .15s ease,color .15s ease,border-color .15s ease}a.card-link:hover .btn-cta{background:var(--accent);border-color:var(--accent);color:var(--bg)}.btn-lightbox{display:inline-block;padding:.7rem 1.4rem;background:var(--surface);color:#fff;border:1px solid var(--border-strong);border-radius:4px;cursor:pointer;font:inherit;text-decoration:none;margin-top:.5rem;transition:background .15s ease,color .15s ease,border-color .15s ease}.btn-lightbox:hover{background:var(--accent);color:var(--bg);border-color:var(--accent)}.sidebar-open{position:fixed;top:1rem;left:1rem;width:40px;height:40px;background:var(--surface);border:1px solid var(--border);color:var(--text);border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:90;transition:background .15s ease,color .15s ease,border-color .15s ease,opacity .2s ease,visibility .2s ease}.sidebar-open:hover{background:var(--accent);color:var(--bg);border-color:var(--accent)}.sidebar-open[aria-expanded=true]{opacity:0;visibility:hidden;pointer-events:none}.sidebar{position:fixed;top:0;left:0;height:100vh;width:var(--sidebar-width);background:var(--surface);border-right:1px solid var(--border);transform:translate(-100%);transition:transform .25s ease;z-index:100}.sidebar.is-open{transform:translate(0)}.sidebar-panel{height:100%;display:flex;flex-direction:column}.sidebar-header{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;border-bottom:1px solid var(--border);flex-shrink:0}.sidebar-close{width:36px;height:36px;background:transparent;color:var(--text-muted);border:1px solid var(--border);border-radius:4px;cursor:pointer;font-size:.85rem;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:color .15s ease,border-color .15s ease,background .15s ease}.sidebar-close:hover{color:var(--accent);border-color:var(--accent);background:var(--accent-soft)}.sidebar-home{flex:1;display:inline-flex;align-items:center;justify-content:center;padding:.45rem .9rem;background:var(--surface);border:1px solid var(--border-strong);color:var(--text);text-decoration:none;border-radius:4px;transition:background .15s ease,color .15s ease,border-color .15s ease}.sidebar-home:hover{background:var(--accent);color:var(--bg);border-color:var(--accent)}.sidebar-home svg{display:block}.sidebar-nav{flex:1;overflow-y:auto;padding:1rem 1.25rem 2rem}.sidebar-section{font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;color:var(--text-dim);margin:1.25rem 0 .5rem;font-weight:600}.sidebar-section:first-of-type{margin-top:0}.sidebar-nav ul{list-style:none;padding:0;margin:0}.sidebar-nav li{margin:.1rem 0}.sidebar-link{display:block;padding:.5rem .7rem;color:var(--text-muted);text-decoration:none;border-radius:4px;font-size:.95rem;transition:color .15s ease,background .15s ease}.sidebar-link:hover{color:#fff;background:var(--accent-soft)}.sidebar-link.is-active{color:var(--accent);background:var(--accent-soft);font-weight:600}.sidebar-link.is-current{color:var(--accent);border-left:2px solid var(--accent);padding-left:calc(.7rem - 2px)}.sidebar-link-button{width:100%;text-align:left;font-family:inherit;background:transparent;border:none;cursor:pointer}.sidebar-galaxy{display:flex;align-items:center;gap:.6rem;margin-top:.5rem;color:var(--accent);font-weight:500}.sidebar-galaxy:hover{background:var(--accent-soft);color:var(--accent)}.sidebar-galaxy svg{flex-shrink:0}.sidebar-link-sub{font-size:.88rem;color:var(--text-dim);padding-left:.7rem}.sidebar-link-sub:hover{color:var(--accent);background:transparent}.sidebar-divider{border:0;border-top:1px solid var(--border);margin:1.25rem 0 0}.detail-main{max-width:900px;margin:0 auto;padding:4rem 1.5rem 6rem}.content h1{font-size:1.9rem;margin-bottom:1rem}.content h2{font-size:1.4rem;margin-top:2.5rem}.content h3{font-size:1.15rem;margin-top:1.5rem}.content table{border-collapse:collapse;width:100%;margin:1rem 0;font-size:.92rem}.content th,.content td{border:1px solid var(--border);padding:.5rem .75rem;text-align:left;vertical-align:top}.content th{background:var(--surface);font-weight:600;color:#fff}.content code{background:var(--surface);color:var(--text);padding:.1rem .35rem;border-radius:3px;font-size:.9em}.content pre{background:var(--surface);color:var(--text);padding:1rem 1.25rem;border-radius:4px;border:1px solid var(--border);overflow-x:auto;font-size:.88rem;line-height:1.55}.content pre code{background:transparent;padding:0;color:inherit;font-size:inherit}.content blockquote{border-left:3px solid var(--border-strong);margin:1rem 0;padding:.25rem 0 .25rem 1rem;color:var(--text-muted)}.site-footer{border-top:1px solid var(--border);margin-top:4rem;padding:2rem 0 3rem;background:var(--bg)}.site-footer-inner{max-width:1200px;margin:0 auto;padding:0 1.5rem;display:flex;justify-content:space-between;align-items:center;gap:1.5rem;flex-wrap:wrap;font-size:.9rem;color:var(--text-muted)}.site-footer-contact{display:flex;align-items:baseline;gap:.75rem}.site-footer-contact .label{font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;color:var(--text-dim)}.site-footer a{color:var(--text);text-decoration:none;border-bottom:1px solid var(--border-strong);transition:color .15s ease,border-color .15s ease}.site-footer a:hover{color:var(--accent);border-bottom-color:var(--accent)}.contact-fab{position:fixed;bottom:1.5rem;right:1.5rem;padding:.8rem 1.5rem;background:var(--accent);color:var(--bg);border:1px solid var(--accent);border-radius:999px;font-size:.95rem;font-weight:600;font-family:inherit;cursor:pointer;z-index:95;box-shadow:0 4px 16px #a78bfa59;transition:transform .15s ease,box-shadow .15s ease,background .15s ease}.contact-fab:hover{transform:translateY(-2px);box-shadow:0 6px 22px #a78bfa8c}.contact-modal{border:1px solid var(--border-strong);background:var(--bg);color:var(--text);padding:0;border-radius:12px;width:90vw;max-width:420px;overflow:hidden;position:relative}.contact-modal::backdrop{background:#000000bf}.contact-close{position:absolute;top:.75rem;right:.75rem;width:32px;height:32px;background:transparent;color:var(--text-muted);border:1px solid var(--border);border-radius:4px;cursor:pointer;font-size:.9rem;z-index:2;transition:color .15s ease,border-color .15s ease,background .15s ease}.contact-close:hover{color:var(--accent);border-color:var(--accent);background:var(--accent-soft)}.contact-card{padding:2.5rem 2rem 2rem;text-align:center}.contact-avatar{width:120px;height:120px;border-radius:50%;object-fit:cover;border:2px solid var(--border-strong);background:var(--surface);margin-bottom:1rem}.contact-name{font-size:1.5rem;margin-bottom:.25rem}.contact-role{color:var(--text-muted);margin:0 0 1.5rem}.contact-list{list-style:none;padding:0;margin:0;text-align:left}.contact-list li{display:flex;justify-content:space-between;align-items:center;padding:.85rem 0;border-bottom:1px solid var(--border);gap:1rem}.contact-list li:last-child{border-bottom:none}.contact-label{font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;color:var(--text-dim);flex-shrink:0}.contact-list a{color:var(--text);text-decoration:none;border-bottom:1px solid var(--border-strong);transition:color .15s ease,border-color .15s ease}.contact-list a:hover{color:var(--accent);border-bottom-color:var(--accent)}.image-lightbox{border:0;padding:0;background:transparent;max-width:95vw;max-height:95vh;overflow:visible}.image-lightbox::backdrop{background:#000000e0}.image-lightbox-img{display:block;max-width:95vw;max-height:90vh;object-fit:contain;border-radius:4px}.image-lightbox-close{position:fixed;top:1.25rem;right:1.25rem;width:44px;height:44px;background:var(--surface);border:1px solid var(--border-strong);color:var(--text);border-radius:50%;cursor:pointer;font-size:1.1rem;display:flex;align-items:center;justify-content:center;z-index:110;transition:background .15s ease,color .15s ease,border-color .15s ease,transform .15s ease}.image-lightbox-close:hover{background:var(--accent);color:var(--bg);border-color:var(--accent);transform:rotate(90deg)}.pdf-lightbox{width:100vw;height:100vh;max-width:100vw;max-height:100vh;margin:0;padding:0;border:0;background:var(--bg);color:var(--text);overflow:hidden;flex-direction:column}.pdf-lightbox[open]{display:flex}.pdf-lightbox::backdrop{background:var(--bg)}.pdf-lightbox-bar{display:flex;align-items:center;gap:.75rem;padding:.65rem 1rem;border-bottom:1px solid var(--border);background:var(--surface);flex-shrink:0}.pdf-lightbox-title{flex:1;color:var(--text);font-size:.95rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pdf-lightbox-newtab{color:var(--text-muted);text-decoration:none;border:1px solid var(--border);padding:.35rem .7rem;border-radius:4px;font-size:.85rem;transition:color .15s ease,border-color .15s ease,background .15s ease}.pdf-lightbox-newtab:hover{color:var(--bg);background:var(--accent);border-color:var(--accent)}.pdf-lightbox-close{width:36px;height:36px;background:transparent;border:1px solid var(--border-strong);color:var(--text);border-radius:50%;cursor:pointer;font-size:1rem;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .15s ease,color .15s ease,border-color .15s ease,transform .15s ease}.pdf-lightbox-close:hover{background:var(--accent);color:var(--bg);border-color:var(--accent);transform:rotate(90deg)}.pdf-lightbox-frame{flex:1;width:100%;border:0;background:#1a1a1a}.content a.btn-pdf-open{display:inline-flex;align-items:center;gap:.4rem;padding:.55rem 1.1rem;background:var(--accent-soft);border:1px solid var(--accent);color:var(--accent);border-radius:6px;font-weight:600;text-decoration:none;transition:background .15s ease,color .15s ease}.content a.btn-pdf-open:hover{background:var(--accent);color:var(--bg)}.content video,.content iframe.video-embed{display:block;width:100%;aspect-ratio:16 / 9;border-radius:4px;border:1px solid var(--border);background:#000;margin:1.25rem 0;outline:none}.content iframe.video-embed{border:0}.content img{max-width:100%;height:auto;border-radius:4px;border:1px solid var(--border);margin:1rem 0}.audio-control{position:fixed;top:1rem;right:1rem;display:flex;align-items:center;gap:.5rem;z-index:90}.audio-volume{width:90px;height:4px;appearance:none;-webkit-appearance:none;background:var(--border-strong);border-radius:2px;outline:none;cursor:pointer}.audio-volume::-webkit-slider-thumb{appearance:none;-webkit-appearance:none;width:14px;height:14px;border-radius:50%;background:var(--accent);cursor:pointer;border:0}.audio-volume::-moz-range-thumb{width:14px;height:14px;border-radius:50%;background:var(--accent);cursor:pointer;border:0}.audio-volume::-webkit-slider-runnable-track{height:4px;background:var(--border-strong);border-radius:2px}.audio-volume::-moz-range-track{height:4px;background:var(--border-strong);border-radius:2px}.audio-toggle{width:40px;height:40px;background:var(--surface);border:1px solid var(--border);color:var(--text);border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .15s ease,color .15s ease,border-color .15s ease}.audio-toggle:hover{background:var(--accent);color:var(--bg);border-color:var(--accent)}.audio-toggle .audio-icon-sound,.audio-toggle .audio-icon-muted{display:none}.audio-toggle:not(.is-muted) .audio-icon-sound{display:block}.audio-toggle.is-muted .audio-icon-muted{display:block}.galaxy-modal{width:100vw;height:100vh;max-width:100vw;max-height:100vh;margin:0;padding:0;border:0;background:var(--bg);color:var(--text);overflow:hidden;position:relative}.galaxy-modal::backdrop{background:var(--bg)}.galaxy-close{position:fixed;top:1.25rem;right:1.25rem;width:44px;height:44px;background:var(--surface);border:1px solid var(--border-strong);color:var(--text);border-radius:50%;cursor:pointer;font-size:1.1rem;display:flex;align-items:center;justify-content:center;z-index:110;transition:background .15s ease,color .15s ease,border-color .15s ease,transform .15s ease}.galaxy-close:hover{background:var(--accent);color:var(--bg);border-color:var(--accent);transform:rotate(90deg)}.galaxy-content{height:100%;display:flex;flex-direction:column;align-items:center;padding:4rem 2rem;gap:1.5rem;text-align:center}.galaxy-title{font-size:2.5rem;margin:0;color:#fff}.galaxy-tabs{display:flex;gap:.25rem;border-bottom:1px solid var(--border);flex-wrap:wrap;justify-content:center}.galaxy-tab{padding:.7rem 1.3rem;background:transparent;color:var(--text-muted);border:none;border-bottom:2px solid transparent;margin-bottom:-1px;cursor:pointer;font:inherit;font-size:.95rem;transition:color .15s ease,border-color .15s ease}.galaxy-tab:hover{color:#fff}.galaxy-tab.is-active{color:var(--accent);border-bottom-color:var(--accent);font-weight:600}.galaxy-panel{display:none;flex:1;width:100%;max-width:1100px;align-items:center;justify-content:center}.galaxy-panel.is-active{display:flex}.galaxy-placeholder{color:var(--text-muted);font-size:1rem;max-width:520px;line-height:1.8}@media(max-width:768px){main{padding:1.25rem 1rem 3rem}h1{font-size:1.6rem}h2{font-size:1.3rem}.sidebar{width:85vw;max-width:320px}.detail-main{padding:4rem 1rem 5rem}.site-footer-inner{padding:0 1rem;justify-content:center;text-align:center}.sidebar-open{top:.75rem;left:.75rem;width:38px;height:38px}.contact-fab{bottom:1rem;right:1rem;padding:.65rem 1.2rem;font-size:.88rem}}@media print{html,body{background:#fff!important;color:#000!important}body *{color:#000!important;text-shadow:none!important;box-shadow:none!important}.sidebar-open,.sidebar,.site-footer,.contact-fab,.contact-modal,.audio-control,.audio-toggle,.galaxy-modal,.image-lightbox,.pdf-lightbox,.btn-cta,.btn-lightbox,.btn-pdf-open,.evidence-cta{display:none!important}main,.detail-main{max-width:none!important;padding:0!important;margin:0!important}.card{border:1px solid #999!important;background:#fff!important;page-break-inside:avoid}h1,h2,h3{page-break-after:avoid;color:#000!important}table,img,pre,blockquote{page-break-inside:avoid}table{border-collapse:collapse}table,th,td{border:1px solid #999!important}th{background:#eee!important}.content img{max-width:100%;height:auto;border:1px solid #ccc!important;margin:.5cm 0}a[href^=http]:after,a[href^="/"]:after{content:" (" attr(href) ")";font-size:.8em;color:#555!important}a[href^="#"]:after{content:""}@page{margin:1.5cm}}
