.highlight table td{padding:5px}.highlight table pre{margin:0}.highlight .cm{color:#777772;font-style:italic}.highlight .cp{color:#797676;font-weight:bold}.highlight .c1{color:#777772;font-style:italic}.highlight .cs{color:#797676;font-weight:bold;font-style:italic}.highlight .c,.highlight .cd{color:#777772;font-style:italic}.highlight .err{color:#a61717;background-color:#e3d2d2}.highlight .gd{color:#000000;background-color:#ffdddd}.highlight .ge{color:#000000;font-style:italic}.highlight .gr{color:#aa0000}.highlight .gh{color:#797676}.highlight .gi{color:#000000;background-color:#ddffdd}.highlight .go{color:#888888}.highlight .gp{color:#555555}.highlight .gs{font-weight:bold}.highlight .gu{color:#aaaaaa}.highlight .gt{color:#aa0000}.highlight .kc{color:#000000;font-weight:bold}.highlight .kd{color:#000000;font-weight:bold}.highlight .kn{color:#000000;font-weight:bold}.highlight .kp{color:#000000;font-weight:bold}.highlight .kr{color:#000000;font-weight:bold}.highlight .kt{color:#445588;font-weight:bold}.highlight .k,.highlight .kv{color:#000000;font-weight:bold}.highlight .mf{color:#009999}.highlight .mh{color:#009999}.highlight .il{color:#009999}.highlight .mi{color:#009999}.highlight .mo{color:#009999}.highlight .m,.highlight .mb,.highlight .mx{color:#009999}.highlight .sb{color:#d14}.highlight .sc{color:#d14}.highlight .sd{color:#d14}.highlight .s2{color:#d14}.highlight .se{color:#d14}.highlight .sh{color:#d14}.highlight .si{color:#d14}.highlight .sx{color:#d14}.highlight .sr{color:#009926}.highlight .s1{color:#d14}.highlight .ss{color:#990073}.highlight .s{color:#d14}.highlight .na{color:#008080}.highlight .bp{color:#797676}.highlight .nb{color:#0086B3}.highlight .nc{color:#445588;font-weight:bold}.highlight .no{color:#008080}.highlight .nd{color:#3c5d5d;font-weight:bold}.highlight .ni{color:#800080}.highlight .ne{color:#990000;font-weight:bold}.highlight .nf{color:#990000;font-weight:bold}.highlight .nl{color:#990000;font-weight:bold}.highlight .nn{color:#555555}.highlight .nt{color:#000080}.highlight .vc{color:#008080}.highlight .vg{color:#008080}.highlight .vi{color:#008080}.highlight .nv{color:#008080}.highlight .ow{color:#000000;font-weight:bold}.highlight .o{color:#000000;font-weight:bold}.highlight .w{color:#bbbbbb}.highlight{background-color:#f8f8f8}html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font:inherit;vertical-align:baseline}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}ol,ul{list-style:none}table{border-collapse:collapse;border-spacing:0}body{box-sizing:border-box;color:#373737;background:#212121;font-size:16px;font-family:'Myriad Pro', Calibri, Helvetica, Arial, sans-serif;line-height:1.5;-webkit-font-smoothing:antialiased}h1,h2,h3,h4,h5,h6{margin:10px 0;font-weight:700;color:#222222;font-family:'Lucida Grande', 'Calibri', Helvetica, Arial, sans-serif;letter-spacing:-1px}h1{font-size:36px;font-weight:700}h2{padding-bottom:10px;font-size:32px;background:url("../images/bg_hr.png") repeat-x bottom}h3{font-size:24px}h4{font-size:21px}h5{font-size:18px}h6{font-size:16px}p{margin:10px 0 15px 0}footer p{color:#f2f2f2}a{text-decoration:none;color:#0F79D0;text-shadow:none;transition:color 0.5s ease;transition:text-shadow 0.5s ease;-webkit-transition:color 0.5s ease;-webkit-transition:text-shadow 0.5s ease;-moz-transition:color 0.5s ease;-moz-transition:text-shadow 0.5s ease;-o-transition:color 0.5s ease;-o-transition:text-shadow 0.5s ease;-ms-transition:color 0.5s ease;-ms-transition:text-shadow 0.5s ease}a:hover,a:focus{text-decoration:underline}footer a{color:#F2F2F2;text-decoration:underline}em,cite{font-style:italic}strong{font-weight:bold}img{position:relative;margin:0 auto;max-width:739px;padding:5px;margin:10px 0 10px 0;border:1px solid #ebebeb;box-shadow:0 0 5px #ebebeb;-webkit-box-shadow:0 0 5px #ebebeb;-moz-box-shadow:0 0 5px #ebebeb;-o-box-shadow:0 0 5px #ebebeb;-ms-box-shadow:0 0 5px #ebebeb}p img{display:inline;margin:0;padding:0;vertical-align:middle;text-align:center;border:none}pre,code{color:#222;background-color:#fff;font-family:Monaco, "Bitstream Vera Sans Mono", "Lucida Console", Terminal, monospace;font-size:0.875em;border-radius:2px;-moz-border-radius:2px;-webkit-border-radius:2px}pre{padding:10px;box-shadow:0 0 10px rgba(0,0,0,0.1);overflow:auto}code{padding:3px;margin:0 3px;box-shadow:0 0 10px rgba(0,0,0,0.1)}pre code{display:block;box-shadow:none}blockquote{color:#666;margin-bottom:20px;padding:0 0 0 20px;border-left:3px solid #bbb}ul,ol,dl{margin-bottom:15px}ul{list-style-position:inside;list-style:disc;padding-left:20px}ol{list-style-position:inside;list-style:decimal;padding-left:20px}dl dt{font-weight:bold}dl dd{padding-left:20px;font-style:italic}dl p{padding-left:20px;font-style:italic}hr{height:1px;margin-bottom:5px;border:none;background:url("../images/bg_hr.png") repeat-x center}table{border:1px solid #373737;margin-bottom:20px;text-align:left}th{font-family:'Lucida Grande', 'Helvetica Neue', Helvetica, Arial, sans-serif;padding:10px;background:#373737;color:#fff}td{padding:10px;border:1px solid #373737}form{background:#f2f2f2;padding:20px}kbd{background-color:#fafbfc;border:1px solid #c6cbd1;border-bottom-color:#959da5;border-radius:3px;box-shadow:inset 0 -1px 0 #959da5;color:#444d56;display:inline-block;font-size:11px;line-height:11px;padding:3px 5px;vertical-align:middle}.outer{width:100%}.inner{position:relative;max-width:640px;padding:20px 10px;margin:0 auto}#forkme_banner{display:block;position:absolute;top:0;right:10px;z-index:10;padding:10px 50px 10px 10px;color:#fff;background:url("../images/blacktocat.png") #0090ff no-repeat 95% 50%;font-weight:700;box-shadow:0 0 10px rgba(0,0,0,0.5);border-bottom-left-radius:2px;border-bottom-right-radius:2px}#header_wrap{background:#212121;background:-moz-linear-gradient(top, #373737, #212121);background:-webkit-linear-gradient(top, #373737, #212121);background:-ms-linear-gradient(top, #373737, #212121);background:-o-linear-gradient(top, #373737, #212121);background:linear-gradient(to top, #373737, #212121)}#header_wrap .inner{padding:50px 10px 30px 10px}#project_title{margin:0;color:#fff;font-size:42px;font-weight:700;text-shadow:#111 0px 0px 10px}#project_tagline{color:#fff;font-size:24px;font-weight:300;background:none;text-shadow:#111 0px 0px 10px}#downloads{position:absolute;width:210px;z-index:10;bottom:-40px;right:0;height:70px;background:url("../images/icon_download.png") no-repeat 0% 90%}.zip_download_link{display:block;float:right;width:90px;height:70px;text-indent:-5000px;overflow:hidden;background:url(../images/sprite_download.png) no-repeat bottom left}.tar_download_link{display:block;float:right;width:90px;height:70px;text-indent:-5000px;overflow:hidden;background:url(../images/sprite_download.png) no-repeat bottom right;margin-left:10px}.zip_download_link:hover{background:url(../images/sprite_download.png) no-repeat top left}.tar_download_link:hover{background:url(../images/sprite_download.png) no-repeat top right}#main_content_wrap{background:#f2f2f2;border-top:1px solid #111;border-bottom:1px solid #111}#main_content{padding-top:40px}#footer_wrap{background:#212121}@media screen and (max-width: 992px){img{max-width:100%}}@media screen and (max-width: 480px){body{font-size:14px}#downloads{display:none}.inner{min-width:320px;max-width:480px}#project_title{font-size:32px}h1{font-size:28px}h2{font-size:24px}h3{font-size:21px}h4{font-size:18px}h5{font-size:14px}h6{font-size:12px}code,pre{font-size:11px}}@media screen and (max-width: 320px){body{font-size:14px}#downloads{display:none}.inner{min-width:240px;max-width:320px}#project_title{font-size:28px}h1{font-size:24px}h2{font-size:21px}h3{font-size:18px}h4{font-size:16px}h5{font-size:14px}h6{font-size:12px}code,pre{min-width:240px;max-width:320px;font-size:11px}}:root{--color-primary: #0077cc;--color-primary-dark: #0056a8;--color-accent: #ff6f61;--color-text: #e0e0e0;--color-text-light: #ffffff;--color-background-light: #1e1e1e;--color-background-dark: #121212;--color-header-bg: #0d0d0d;--color-border: #333333;--color-surface: #141414;--color-surface-2: #1a1a1a;--color-glass: rgba(22, 22, 26, 0.55);--color-glass-solid: #16161a;--color-glass-border: #2a2a2e;--color-overlay: rgba(4, 4, 6, 0.55);--color-glow-cyan: #38bdf8;--color-glow-teal: #2dd4bf;--glow-strong: 0 0 40px rgba(56, 189, 248, 0.35);--color-hero-1: #0f2845;--color-hero-2: #0d0d23;--color-hero-3: #160b22;--radius: 8px;--radius-sm: 6px;--radius-lg: 14px;--radius-xl: 22px;--font-body: 'Inter', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-heading: 'Inter', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--spacing-md: 1.5rem;--spacing-lg: 2rem;--shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.4);--shadow-md: 0 6px 20px rgba(0, 0, 0, 0.45);--shadow-lg: 0 18px 50px rgba(0, 0, 0, 0.6);--step-0: 0.92rem;--step-1: 1.05rem;--step-2: 1.55rem;--step-3: 2.2rem;--step-4: 3.05rem;--anim-gradient-x: 135deg;--anim-gradient-y: 45deg}body::before{content:"";position:fixed;inset:0;background-image:radial-gradient(circle at 20% 10%, rgba(56,189,248,0.05), transparent 40%),radial-gradient(circle at 80% 90%, rgba(45,212,191,0.04), transparent 40%);pointer-events:none;z-index:0}.container{max-width:1200px;margin-left:auto;margin-right:auto;padding-left:var(--spacing-lg);padding-right:var(--spacing-lg)}.layout-grid{display:flex;flex-wrap:wrap;gap:clamp(1.5rem, 4vw, 2.5rem);padding-top:var(--spacing-lg);padding-bottom:var(--spacing-lg)}.layout-grid .main-content{min-width:0}.site-header{position:sticky;top:0;z-index:100;background:linear-gradient(135deg, var(--color-header-bg) 0%, #000 100%);border-bottom:1px solid var(--color-glass-border);box-shadow:0 4px 20px rgba(0,0,0,0.4);backdrop-filter:blur(10px)}.header-inner{max-width:1200px;margin:0 auto;padding:0 var(--spacing-lg);display:flex;flex-direction:column;flex-wrap:wrap;justify-content:space-between;align-items:center;text-align:center}.brand{position:relative;font-family:var(--font-heading);font-size:var(--step-4);line-height:1.1;margin:0 0 0.5rem;color:var(--color-text-light);letter-spacing:-1.5px;font-weight:800;text-shadow:0 2px 30px rgba(0,0,0,0.6)}.subtitle{font-family:var(--font-heading);font-size:var(--step-2);color:#c4c4cc;font-weight:300;margin:0}main-nav{display:flex;align-items:center;gap:var(--spacing-md);flex:1;justify-content:center;flex-wrap:wrap}main-nav a{position:relative;font-size:var(--step-1);font-weight:600;color:#b8b8c0;padding:0.25rem 0;transition:color 0.25s ease}main-nav a::after{content:"";position:absolute;left:0;bottom:-4px;width:0;height:2px;background:linear-gradient(135deg, var(--color-glow-cyan), var(--color-glow-teal));transition:width 0.25s ease}main-nav a:hover,main-nav a.is-active{color:var(--color-text-light)}main-nav a:hover main-nav a::after,main-nav a.is-active::after{width:100%}.header-social{display:flex;align-items:center;gap:var(--spacing-md);margin-top:var(--spacing-md)}.header-social a{font-size:var(--step-1);color:#b8b8c0;text-decoration:none;transition:color 0.25s ease, transform 0.25s ease}.header-social a:hover{color:var(--color-glow-cyan);transform:translateY(-2px)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:0.5rem;padding:0.75rem 1.6rem;font-family:var(--font-body);font-size:var(--step-1);font-weight:600;letter-spacing:0.3px;border-radius:var(--radius);border:1px solid var(--color-glass-border);cursor:pointer;text-decoration:none;transition:transform 0.25s ease, box-shadow 0.25s ease, background 0.25s ease, color 0.25s ease;line-height:1}.btn:hover{transform:translateY(-2px)}.btn--primary{background:linear-gradient(135deg, var(--color-glow-cyan), var(--color-primary));color:#05101a;border-color:transparent;box-shadow:0 6px 20px rgba(56,189,248,0.28)}.btn--primary:hover{box-shadow:var(--glow-strong)}.btn--glass{background:var(--color-glass);color:var(--color-text-light);backdrop-filter:blur(10px)}.site-footer{background:linear-gradient(135deg, var(--color-header-bg) 0%, #000 100%);border-top:1px solid var(--color-glass-border);padding:var(--spacing-lg) 0;color:#9a9aa0}.footer-inner{display:flex;flex-direction:column;align-items:center;text-align:center}.footer-social{display:flex;flex-wrap:wrap;gap:var(--spacing-md);align-items:center}.footer-social a{color:#b8b8c0;text-decoration:none;font-size:var(--step-1);font-weight:600;transition:color 0.25s ease}.footer-social a:hover{color:var(--color-glow-cyan)}.footer-pages a{color:#9a9aa0;font-size:var(--step-1);font-weight:600;transition:color 0.25s ease}.footer-pages a:hover{color:var(--color-glow-cyan)}.footer-copy{color:#7a7a80;font-size:var(--step-0);margin-top:0.25rem}@media screen and (max-width: 768px){.layout-grid{flex-direction:row}.layout-grid .sidebar,.layout-grid .main-content{width:100%;max-width:none}.site-header{position:static}.header-inner{flex-direction:column;gap:var(--spacing-md)}main-nav{justify-content:flex-start}.hero__actions{justify-content:center}}body{font-family:var(--font-body);line-height:1.7;color:var(--color-text);background-color:var(--color-background-dark);transition:background-color 0.3s ease;position:relative;overflow-x:hidden}.reveal{opacity:0;transform:translateY(24px);transition:opacity 0.7s cubic-bezier(0.22, 1, 0.36, 1),transform 0.7s cubic-bezier(0.22, 1, 0.36, 1);transition-delay:calc(var(--reveal-delay, 0s) + 0.05s * (var(--reveal-index, 0)))}.reveal.is-visible{opacity:1;transform:translateY(0)}header{background:linear-gradient(135deg, var(--color-header-bg) 0%, #000 100%);padding:var(--spacing-lg) 0;border-bottom:1px solid var(--color-border);box-shadow:0 2px 10px rgba(0,0,0,0.5)}header h1{font-size:clamp(2rem, 5vw, 3.2rem);margin-bottom:0.5rem;color:var(--color-text-light);letter-spacing:-1px}header p{font-size:clamp(1rem, 2vw, 1.25rem);color:#aaaaaa;font-weight:300}#main_content{display:flex;align-items:flex-start;flex-wrap:wrap;gap:2rem;max-width:1200px;margin:0 auto;padding:var(--spacing-md);background-color:var(--color-background-light);border-radius:var(--radius);box-shadow:0 0 20px rgba(0,0,0,0.4)}#main_content .sidebar{flex:1;min-width:260px;max-width:280px;background-color:var(--color-background-dark);padding:var(--spacing-lg);border-radius:var(--radius);border-top:4px solid var(--color-primary);box-shadow:0 4px 15px rgba(0,0,0,0.3);display:flex;flex-direction:column;gap:1rem}#main_content .sidebar .profile-card{text-align:center}#main_content .sidebar .profile-card h1{font-size:1.5rem;margin-bottom:0.25rem;color:var(--color-text-light)}#main_content .sidebar .profile-card .subtitle{color:#aaaaaa;font-size:0.95rem;margin-bottom:0.5rem;font-weight:300}#main_content .sidebar .profile-card .email{color:var(--color-primary);font-size:0.9rem;margin-bottom:1rem}#main_content .sidebar .social-links{display:flex;flex-direction:column;gap:0.5rem;margin-bottom:1.5rem}#main_content .sidebar .social-links a{display:block;padding:0.5rem 0;color:var(--color-text-light);text-decoration:none;font-size:0.9rem;border-bottom:1px solid #333;transition:color 0.3s ease, padding-left 0.3s ease}#main_content .sidebar .social-links a:hover{color:var(--color-primary);padding-left:0.75rem}#main_content .sidebar .languages{margin-top:auto}#main_content .main-content{flex:3;min-width:0;padding:var(--spacing-md)}h2{color:var(--color-primary);font-size:2.2rem;border-bottom:2px solid var(--color-border);padding-bottom:10px;margin-top:var(--spacing-lg);font-weight:700}h3{color:var(--color-text-light);margin-top:var(--spacing-md);border-left:4px solid var(--color-primary);padding-left:10px}a{color:var(--color-primary);text-decoration:none;transition:color 0.3s ease;font-weight:600}a:hover{color:#fff;text-decoration:underline}table{width:100%;border-collapse:separate;border-spacing:0;margin:var(--spacing-md) 0;background:var(--color-background-light);border-radius:var(--radius);overflow:hidden;box-shadow:0 4px 15px rgba(0,0,0,0.3)}table th{padding:1rem 1.25rem;background-color:var(--color-primary);color:white;font-weight:600;text-transform:uppercase;font-size:0.9rem}table td{padding:1rem 1.25rem;text-align:left;border-bottom:1px solid var(--color-border)}table tr:nth-child(even){background-color:#282828}table tr:hover{background-color:#3a3a3a}.badge{display:inline-block;padding:0.25rem 0.6rem;margin:2px;border-radius:20px;font-size:0.85em;font-weight:600;transition:all 0.3s ease;background-color:#333333;color:#ccc;border:1px solid #444444}.badge:hover{background-color:var(--color-primary);color:white;border-color:var(--color-primary);transform:scale(1.05);box-shadow:0 0 10px rgba(0,119,204,0.5)}code{background-color:#333333;padding:2px 6px;border-radius:var(--radius);font-family:"JetBrains Mono", Consolas, monospace;color:var(--color-accent)}pre{background-color:#000000;color:#d1d1d1;padding:var(--spacing-md);border-radius:var(--radius);overflow-x:auto;font-size:0.9rem;border:1px solid #333333}hr{border:none;height:1px;background:linear-gradient(to right, transparent, var(--color-border), transparent);margin:var(--spacing-lg) 0}@media screen and (max-width: 768px){header{padding:var(--spacing-md) 0;text-align:center}header h1{font-size:2.2rem}header p{font-size:1rem}#main_content{padding:1rem;flex-direction:column}#main_content .sidebar{max-width:none;width:100%;border-top:none;border-left:4px solid var(--color-primary)}}
