:root{--bg:#fafafa;--card:#fff;--ink:#18181b;--ink2:#3f3f46;--muted:#71717a;--faint:#a1a1aa;--line:#e4e4e7;--accent:#4f46e5;--accent-weak:#eef2ff;--dark:#09090b;--dark2:#131316;--dark-line:#27272a;--dark-text:#fafafa;--dark-muted:#a1a1aa;--sans:var(--font-inter), system-ui, sans-serif;--mono:var(--font-jetbrains-mono), ui-monospace, monospace}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--bg);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility}a{color:var(--accent);text-decoration:none}a:hover{color:#4338ca}::selection{background:var(--accent);color:#fff}img{max-width:100%;display:block}[data-navlink]{color:var(--ink2);position:relative}[data-navlink]:hover{color:var(--ink)}[data-navlink]:after{content:"";background:var(--ink);width:0;height:1px;transition:width .25s;position:absolute;bottom:-4px;left:0}[data-navlink]:hover:after{width:100%}.btn-prim,.btn-sec{white-space:nowrap;border-radius:12px;justify-content:center;align-items:center;height:44px;padding:0 22px;font-size:15px;font-weight:600;text-decoration:none;transition:transform .2s,box-shadow .2s,border-color .2s,color .2s;display:inline-flex}.btn-prim{background:var(--accent);color:#fff}.btn-prim:hover{transform:translateY(-2px);box-shadow:0 10px 30px -10px #4f46e599}.btn-sec{border:1px solid var(--line);color:var(--ink);background:0 0}.btn-sec:hover{border-color:var(--ink)}.tpl-btn-prim{transition:transform .2s,box-shadow .2s}.tpl-btn-prim:hover{transform:translateY(-2px);box-shadow:0 10px 30px -10px #4f46e599}.tpl-btn-sec{transition:border-color .2s,color .2s}.tpl-btn-sec:hover{border-color:var(--ink)!important;color:var(--ink)!important}[data-mainimg]{transition:transform 7s}[data-mainwrap]:hover [data-mainimg]{transform:scale(1.06)}[data-thumb]{cursor:pointer;opacity:.66;transition:opacity .2s,outline-color .2s}[data-thumb]:hover{opacity:1}[data-thumb][data-on=true]{opacity:1;outline:2px solid var(--accent);outline-offset:-2px}[data-thumbstrip]{scrollbar-width:thin;scrollbar-color:var(--line) transparent}[data-thumbstrip]::-webkit-scrollbar{height:6px}[data-thumbstrip]::-webkit-scrollbar-thumb{background:var(--line);border-radius:99px}[data-mtab]{transition:color .2s,background .2s,box-shadow .2s}[data-mtab][data-on=true]{box-shadow:0 1px 3px #00000017;background:var(--card)!important;color:var(--ink)!important}[data-sim]{transition:transform .3s,border-color .3s,box-shadow .3s}[data-sim]:hover{border-color:var(--accent);transform:translateY(-3px);box-shadow:0 16px 50px -26px #4f46e566}input[type=range]{appearance:none;background:var(--line);width:100%;height:4px;accent-color:var(--accent);border-radius:99px;outline:none}input[type=range]::-webkit-slider-thumb{appearance:none;background:var(--accent);cursor:pointer;border:3px solid #fff;border-radius:50%;width:22px;height:22px;box-shadow:0 2px 8px -2px #4f46e599}input[type=range]::-moz-range-thumb{background:var(--accent);cursor:pointer;border:3px solid #fff;border-radius:50%;width:22px;height:22px}#lightbox{z-index:100;background:#09090bf0;justify-content:center;align-items:center;padding:40px;display:none;position:fixed;inset:0}#lightbox.on{display:flex}#lightbox img{object-fit:contain;border-radius:10px;max-width:92vw;max-height:88vh}@keyframes tpl-marq-l{0%{transform:translate(0)}to{transform:translate(-50%)}}@keyframes tpl-marq-r{0%{transform:translate(-50%)}to{transform:translate(0)}}@keyframes tpl-spin{to{transform:rotate(360deg)}}.beam-ring{animation:4s linear infinite tpl-spin}@media (prefers-reduced-motion:reduce){.beam-ring{animation:none}}[data-jk]{transition:transform .3s,border-color .3s,box-shadow .3s}[data-jk]:hover{border-color:var(--accent);transform:translateY(-4px);box-shadow:0 18px 54px -26px #4f46e56b}[data-jk] [data-jkimg]{transition:transform 6s}[data-jk]:hover [data-jkimg]{transform:scale(1.07)}[data-chip]{transition:background .2s,color .2s,border-color .2s}[data-chip][data-on=true]{background:var(--ink)!important;color:#fff!important;border-color:var(--ink)!important}[data-chip]:not([data-on=true]):hover{border-color:var(--ink)!important;color:var(--ink)!important}[data-sortbtn]{transition:color .2s}[data-sortbtn][data-on=true]{font-weight:600;color:var(--ink)!important}[data-post]{transition:transform .3s,border-color .3s,box-shadow .3s}[data-post]:hover{border-color:var(--accent);transform:translateY(-4px);box-shadow:0 16px 50px -26px #4f46e566}[data-post] [data-pimg],[data-feat] [data-fimg]{transition:transform 6s}[data-post]:hover [data-pimg],[data-feat]:hover [data-fimg]{transform:scale(1.05)}[data-stage]{transition:background .3s,box-shadow .3s}[data-stage]:hover{background:var(--card);box-shadow:inset 3px 0 0 var(--accent)}[data-stage]:hover [data-thumb]{opacity:1!important;transform:translate(0)!important}[data-team]{transition:border-color .3s,transform .3s}[data-team]:hover{border-color:var(--accent);transform:translateY(-6px)}[data-team] [data-teamphoto]{transition:filter .4s}[data-team]:hover [data-teamphoto]{filter:grayscale(0)!important}[data-hscroll]{scrollbar-width:thin;scrollbar-color:var(--line) transparent}[data-hscroll]::-webkit-scrollbar{height:6px}[data-hscroll]::-webkit-scrollbar-thumb{background:var(--line);border-radius:99px}[data-case]{transition:transform .3s,border-color .3s,box-shadow .3s}[data-case]:hover{border-color:var(--accent);transform:translateY(-4px);box-shadow:0 12px 40px -18px #4f46e559}[data-apt]{transition:transform .3s,border-color .3s,box-shadow .3s}[data-apt]:hover{border-color:var(--accent);transform:translateY(-3px);box-shadow:0 16px 50px -26px #4f46e566}[data-sim] [data-simimg]{transition:transform 6s}[data-sim]:hover [data-simimg]{transform:scale(1.06)}details[data-faq] summary,details[data-acc] summary{cursor:pointer;list-style:none}details[data-faq] summary::-webkit-details-marker{display:none}details[data-acc] summary::-webkit-details-marker{display:none}details[data-faq],details[data-acc]{border-bottom:1px solid var(--line)}.tpl-plus,.acc-plus{transition:transform .3s}details[data-faq][open] .tpl-plus,details[data-acc][open] .acc-plus{transform:rotate(45deg)}[data-reveal]{opacity:0;transition:opacity .7s cubic-bezier(.22,1,.36,1),transform .7s cubic-bezier(.22,1,.36,1);transform:translateY(26px)}[data-reveal].is-visible{opacity:1;transform:none}.prose p{color:var(--ink2);margin:0 0 24px;font-size:18px;line-height:1.72}.prose h2{letter-spacing:-.025em;color:var(--ink);margin:46px 0 16px;font-size:27px;font-weight:600;line-height:1.2}.prose ul{margin:0 0 24px;padding-left:0;list-style:none}.prose li{color:var(--ink2);margin-bottom:12px;padding-left:28px;font-size:18px;line-height:1.65;position:relative}.prose li:before{content:"";background:var(--accent);border-radius:2px;width:7px;height:7px;position:absolute;top:11px;left:2px}.prose strong{color:var(--ink);font-weight:600}.prose h1{letter-spacing:-.03em;color:var(--ink);margin:46px 0 18px;font-size:34px;font-weight:700;line-height:1.15}.prose h3{letter-spacing:-.02em;color:var(--ink);margin:36px 0 14px;font-size:22px;font-weight:600;line-height:1.25}.prose h4{color:var(--ink);margin:28px 0 12px;font-size:18px;font-weight:600;line-height:1.3}.prose em{color:inherit}.prose ol{color:var(--ink2);margin:0 0 24px;padding-left:22px}.prose ol li{margin-bottom:12px;padding-left:4px;font-size:18px;line-height:1.65}.prose a{color:var(--accent);text-underline-offset:2px;text-decoration:underline}.prose blockquote{border-left:3px solid var(--accent);color:var(--muted);margin:0 0 24px;padding:4px 0 4px 20px;font-size:17px;font-style:italic}.prose code{font-family:var(--mono);background:var(--accent-weak);color:var(--ink);border-radius:5px;padding:2px 6px;font-size:.9em}.prose pre{background:var(--dark2);border-radius:12px;margin:0 0 24px;padding:18px 20px;overflow-x:auto}.prose pre code{color:var(--dark-text);background:0 0;padding:0}.prose img{border-radius:14px;max-width:100%;height:auto;margin:8px 0 28px;display:block}.prose table{border-collapse:collapse;width:100%;margin:0 0 28px;font-size:15.5px}.prose th,.prose td{border:1px solid var(--line);text-align:left;padding:10px 14px}.prose th{background:var(--bg);color:var(--ink);font-weight:600}.prose td{color:var(--ink2)}.prose hr{border:none;border-top:1px solid var(--line);margin:40px 0}
