body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}*{box-sizing:border-box}::selection{background-color:#fff!important;color:#101010!important}html{padding:0;height:100%;scroll-behavior:smooth;zoom:100%}body,html{margin:0;width:100%;overflow-x:hidden}body{min-height:100%;background-color:#202020;font-family:Arial,Helvetica,sans-serif}.external_link{filter:brightness(.7) sepia(1) hue-rotate(190deg) saturate(2)}canvas{display:flex;justify-content:center;align-items:center;position:fixed;top:0;left:0;transition:width .5s,height .6s,top .5s,left .5s;opacity:0;z-index:999;cursor:-webkit-grab;cursor:grab}canvas.loaded{animation:canvasFade 1.5s ease forwards}canvas:active{cursor:-webkit-grabbing;cursor:grabbing}@keyframes canvasFade{0%{opacity:0;transform:translateY(300px)}to{opacity:1;transform:translateY(0)}}#avatar-bars{display:flex;justify-content:center;align-items:center;position:fixed;top:0;left:0;opacity:0;z-index:4;padding:40px;transition:width .6s,height .7s,top .6s,left .6s,padding .5s,opacity .5s}.App>main{padding-top:100px}@media screen and (max-width:786px){#avatar-bars{padding:40px}}@media screen and (max-width:450px){#avatar-bars{padding:20px}}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:rgba(5,5,5,.2);border-radius:10px}::-webkit-scrollbar-thumb{background:hsla(0,0%,100%,.4);border-radius:10px;-webkit-transition:background .3s;transition:background .3s}::-webkit-scrollbar-thumb:hover{background:hsla(0,0%,100%,.6)}.brackets{display:flex;justify-content:center;align-items:center;position:relative;-webkit-user-select:none;-moz-user-select:none;user-select:none;color:hsla(0,0%,100%,.4)!important;text-shadow:0 0 2px #000}.brackets:not(h1):hover{cursor:pointer}.brackets.hover:hover,.brackets:not(h1):hover{color:hsla(0,0%,100%,.9)!important}.brackets.hover{color:hsla(0,0%,100%,.75)!important}.brackets,.brackets:after,.brackets:before{transition:transform .4s,color .3s,opacity .3s}.brackets:after,.brackets:before{color:hsla(0,0%,100%,0);opacity:0}.brackets:before{content:"{";margin-right:10px;transform:translateX(20px)}.brackets:after{content:"}";margin-left:10px;transform:translateX(-20px)}.brackets:hover:after,.brackets:hover:before{color:hsla(0,0%,100%,.9);opacity:1;transform:translateX(0)}.brackets.hover:hover:after,.brackets.hover:hover:before{color:hsla(0,0%,100%,.9);opacity:1}.brackets.hover:after,.brackets.hover:before{color:hsla(0,0%,100%,.75);opacity:1;transform:translateX(0)}.underline{display:flex;justify-content:center;align-items:center;position:relative;-webkit-user-select:none;-moz-user-select:none;user-select:none;color:hsla(0,0%,100%,.4)!important;text-shadow:0 0 2px #000;padding:0 4vw}.underline:hover{color:hsla(0,0%,100%,.75)!important}.underline,.underline:after{transition:all .2s linear}.underline:after{position:absolute;content:"";background-color:hsla(0,0%,100%,.75);width:calc(20px + 40%);height:1px;bottom:-20%;transform:scaleX(0)}.underline:hover:after{transform:scale(1);transition:all .2s ease}section#about{display:flex;align-items:center;min-height:calc(100vh - 100px);background-color:#202020;position:relative}section#about>div{padding:20px;border-radius:20px;margin-left:50vw}#about-title{display:flex;flex-direction:column;color:#fff;z-index:2;position:relative;word-break:auto-phrase}#about-title p,#about-title>div>div:first-of-type{opacity:.85;line-height:175%;margin:0}#about-title p em{opacity:.5}#about-title p span,#about-title>div>div:first-of-type span{font-size:14px;background-color:#151515;border-radius:10px;padding:5px 12px;margin:4px 4px 4px 0;word-break:keep-all;position:relative;transition:all .05s linear;border:1px solid transparent;cursor:pointer}#about-title p span:hover,#about-title>div>div:first-of-type span:hover{background-color:#202020;border:1px solid hsla(0,0%,100%,.15)}#about-title small ul span{transition:all .05s linear}#about-title h1{font-family:Arial,Helvetica,sans-serif;letter-spacing:2px;font-size:calc(12px + 3vw);margin:0;opacity:.85}#about-title small{display:flex;align-items:center;opacity:.7;color:hsla(0,0%,100%,.75);font-size:calc(14px + .25vw);margin-top:-1vw}#about-title small ul{display:flex;padding:0 5px}#about-title small ul li{padding:0 10px 0 0;font-size:calc(12px + .25vw)}#about-title small ul span{display:flex;justify-content:center;align-items:center;margin:0;padding:4px;font-size:3px;opacity:.6}#about-title p a{color:#fff;opacity:.9;text-decoration:none}#about-title p a>b{position:relative;-webkit-user-select:none;-moz-user-select:none;user-select:none}#about-title p a>b:before{content:"lukasz.frydrych@xsiadron.com";position:absolute;top:-20px;left:0;background-color:#101010;font-size:0;opacity:0;padding:2.5px 10px;border-radius:10px;transition:all .1s ease}#about-title p a>b:hover:before{top:-40px;font-size:80%;opacity:1}#about-title h1 span{font-size:calc(8px + 1vw);opacity:.3;-webkit-user-select:none;-moz-user-select:none;user-select:none}#build_projects,#build_projects>div{display:flex;flex-wrap:wrap;align-items:center}#programming_languages{line-height:250%!important}@media screen and (max-width:950px){#about-title{font-size:14px}#about-title p span,#about-title>div>div:first-of-type span{font-size:12px}}@media screen and (max-width:768px){#about-title{font-size:11px}#about-title p span,#about-title>div>div:first-of-type span{font-size:12px}#about-title h1{font-size:calc(8px + 2.5vw)}#about-title small{font-size:calc(10px + .25vw)}#about-title small ul li{padding-right:5px;font-size:calc(8px + .3vw)}section#about>div{margin-left:35vw}section#about{min-height:75vh}}@media screen and (max-width:605px){#about-title p span,#about-title>div>div:first-of-type span{font-size:9px;border-radius:6px;padding:5px 6px;margin:2px}}@media screen and (max-width:368px){section#about>div{margin-left:0}#build_projects_text_block{display:flex;flex-direction:column;margin-left:35vw}#build_projects{display:flex;align-items:flex-start;justify-content:center;flex-direction:column}#about-title p span{padding:2px 4px!important;margin:1px!important}}@media screen and (max-width:268px){#about-title p{font-size:9px}#about-title p span{font-size:7px}#about-title h1{font-size:calc(6px + 2.5vw)}#about-title small{font-size:calc(8px + .25vw)}#about-title small ul li{font-size:calc(6px + .3vw)}#about-title h2{font-size:calc(4px + .25vw)}#about-title p span{margin:0!important}section#about>div{padding:5px}}nav{position:fixed;justify-content:flex-end;align-items:center;width:100%;min-height:100px;background-color:rgba(32,32,32,.9);-webkit-backdrop-filter:blur(25px);backdrop-filter:blur(25px);padding:0 20px;z-index:3}nav,nav ul{display:flex}nav ul{list-style:none}nav ul li{cursor:pointer;font-size:15px}nav button{background:transparent;outline:none;border:none;margin:0 4vw}@media screen and (max-width:768px){nav ul li{font-size:13px;padding:0 2vw!important}}@media screen and (max-width:600px){nav button{margin:0!important}}@media screen and (max-width:400px){nav{padding:0}nav ul li{font-size:12px;padding:0!important}}@media screen and (max-width:346px){nav{padding:0}nav ul{flex-direction:column}nav ul li{font-size:12px;padding:5px 0!important}}section#projects{display:flex;flex-direction:column;justify-content:center;align-items:center;width:100%;margin-top:15vh}section#projects>div{padding:20px;width:100%}section#projects h1{color:hsla(0,0%,100%,.6);font-size:calc(25px + 1.5vw);margin:0 20px 20px;font-weight:lighter}div#projects-grid{display:grid;width:100%;justify-content:center;justify-items:center;grid-gap:20px 15px;grid-template-columns:repeat(auto-fit,minmax(400px,1fr))}@media screen and (max-width:768px){div#projects-grid{grid-template-columns:none}}section#skills{margin-top:15vh}section#skills,section#skills>div{display:flex;flex-direction:column;justify-content:center;align-items:center;width:100%}section#skills>div{padding:20px;border-radius:10px}section#skills h1{color:hsla(0,0%,100%,.6);font-size:calc(25px + 1.5vw);font-weight:lighter}section#skills h2{color:hsla(0,0%,100%,.3);font-size:calc(15px + .6vw);margin:20px;font-weight:lighter}div.skills-grid{display:grid;width:100%;justify-content:center;justify-items:start;grid-gap:30px;grid-template-columns:repeat(3,minmax(100px,350px))}@media screen and (max-width:950px){div.skills-grid{grid-template-columns:repeat(auto-fill,minmax(calc(47%),0fr))}}@media screen and (max-width:550px){div.skills-grid{grid-template-columns:repeat(auto-fill,minmax(calc(100%),0fr))}}section#socials{display:flex;flex-direction:column;justify-content:center;align-items:center;width:100%;margin-top:25vh;overflow:hidden}section#socials>div{padding:10px;width:100%;background-color:#181818}section#socials h1{color:hsla(0,0%,100%,.6);font-size:calc(25px + 1.5vw);margin:0 20px 20px;font-weight:lighter}.placeholder-grid{height:0!important;pointer-events:none!important}.placeholder-grid,section#socials div#grid{display:grid;width:100%;justify-content:center;justify-items:center;grid-gap:20px 10px;padding:0 10px;grid-template-columns:repeat(auto-fit,minmax(85px,1fr))}section#socials div#grid>:last-child{width:100%;max-width:none;aspect-ratio:0}section#socials div#grid>*{display:flex;justify-content:center;align-items:center;width:100%;max-width:85px;aspect-ratio:1}@media (min-width:330px) and (max-width:430px){.placeholder-grid,section#socials div#grid{grid-gap:0 0;padding:0;grid-template-columns:repeat(auto-fit,minmax(70px,.8fr))}}footer{justify-content:space-between;align-items:center;width:100%;background-color:#101010;padding:20px;color:hsla(0,0%,100%,.5);font-weight:lighter;font-size:12px}footer,footer div{display:flex}footer div p{margin:0 10px}footer div p a{cursor:pointer;transition:.4s ease-in-out}footer div p a:hover{cursor:pointer;color:#fff}@media screen and (max-width:768px){footer{flex-direction:column}}@media screen and (max-width:384px){footer{font-size:10px}}:root{--background-color:#202020;--text-color:#fff;--text-color-muted:hsla(0,0%,100%,.8);--text-color-secondary:hsla(0,0%,100%,.9);--border-color:hsla(0,0%,100%,.8);--padding-horizontal:5vw}.app-privacy-policy body{margin:0;min-height:100%;width:100%;background-color:var(--background-color);font-family:Arial,Helvetica,sans-serif;overflow-x:hidden}.app-privacy-policy .privacy-policy{color:var(--text-color);padding:var(--padding-horizontal);margin-top:50px;border-radius:8px}.app-privacy-policy .privacy-policy h2{font-weight:700;border-bottom:1px solid var(--border-color);color:var(--text-color-secondary);padding-bottom:10px;margin-bottom:20px}.app-privacy-policy .privacy-policy h3,.app-privacy-policy .privacy-policy p,.app-privacy-policy .privacy-policy ul{margin-top:30px;color:var(--text-color-muted)}.app-privacy-policy .privacy-policy ul{list-style-type:square;padding-left:20px;margin-bottom:20px}.app-privacy-policy .privacy-policy a{color:var(--text-color-secondary);text-decoration:underline}.app-privacy-policy .privacy-policy a:hover{opacity:.8}.app-privacy-policy .brackets,.app-privacy-policy button,.app-privacy-policy ul{padding:0}.app-privacy-policy button{padding:0 var(--padding-horizontal)}.app-privacy-policy nav div>button{padding:0}.box{display:flex;flex-direction:column;justify-self:center;align-items:center;background-color:#191919;width:100%;height:425px;overflow:hidden;color:#fff;border-radius:10px;box-shadow:0 0 5px 5px rgba(0,0,0,.1)}.box>a{height:40%;transition:all .2s}.box .background_image,.box>a{display:flex;justify-content:center;align-items:center;width:100%}.box .background_image{height:100%;background-position:50%;background-size:100vw;background-attachment:local;background-repeat:no-repeat;-webkit-user-select:none;-moz-user-select:none;user-select:none}.box:hover>a{height:15%}.box>a:hover~.box_text{opacity:.4;overflow:hidden}.box .background_image img{height:100%;-webkit-user-select:none;-moz-user-select:none;user-select:none}.box>div{padding:10px}.box>div h2{display:flex;justify-content:center;align-items:center;margin:0;color:hsla(0,0%,100%,.8);font-size:calc(14px + .3vw);letter-spacing:1px}.box>div h2 img::selection{background-color:transparent!important}.box>div p{color:hsla(0,0%,100%,.6);font-size:calc(13px + .1vw)}.box .box_text{display:flex;justify-content:flex-start;align-items:flex-start;flex-direction:column;width:100%;height:100%;padding:15px;color:hsla(0,0%,100%,.5);overflow:hidden auto;transition:all .2s}@media (hover:none) and (pointer:coarse){.box .box_text{overflow:hidden}}.box .box_text::selection,.box .box_text:active,.box .box_text:hover{overflow:hidden auto}.box .box_text p{height:100%}.box .box_text small{margin:0 10px}.box .box_text div{display:flex;justify-content:flex-start;align-items:center;width:100%}.box .box_title{display:flex;width:100%;text-decoration:none}.box_footer{justify-content:space-between;width:100%;padding:12px 15px;background-color:#101010;border-top:1px solid hsla(0,0%,100%,.1)}.box_footer,.box_footer_date{display:flex;align-items:center}.box_footer_date{gap:8px}.box_footer_date img{width:14px;height:14px;opacity:.7}.box_footer_date small{color:hsla(0,0%,100%,.7);font-size:12px}.box_footer_link{display:flex;align-items:center;gap:6px;text-decoration:none;transition:opacity .2s}.box_footer_link:hover{opacity:.8}.box_footer_link small{color:hsla(0,0%,100%,.8);font-size:12px}.box_footer_link .external_link{filter:brightness(1) sepia(0) hue-rotate(0deg) saturate(1);opacity:.8}.box_tags{margin-bottom:10px}.box_tag{background:#181818;color:#fff;padding:4px 12px;font-size:11px;border:none;display:inline-block}.box_tag:hover{background:#202020}.box_tag:active{transform:translateY(0)}.skill{display:flex;justify-content:center;align-items:center;flex-direction:column;background-color:#191919;color:#fff;border-radius:10px;box-shadow:0 0 5px 5px rgba(0,0,0,.1);padding:5px 10px;width:100%;aspect-ratio:1/1;position:relative}.skill,.skill:hover{transition:all .2s ease-in-out}.skill:hover{transform:scale(1.05)!important;background:transparent}.skill-gradient{position:absolute;bottom:0;left:0;width:100%;height:100%;background-size:cover;pointer-events:none}.skill h1{width:100%;text-align:center;font-size:1.5rem!important;margin:10px!important;color:#fff!important;opacity:.9;font-weight:400!important}.skill p{font-size:1rem!important;text-align:center;margin:0 10px 10px!important;width:80%;font-weight:300!important;letter-spacing:.6px}.skill img,.skill p{opacity:.8}.skill img::selection{background-color:transparent!important}@media screen and (max-width:950px){.skill{width:100%}}@media screen and (max-width:2000px){.skill{width:100%}}@media screen and (max-width:768px){.skill{height:calc(100px + 20vw)}}@media screen and (max-width:550px){.skill{width:100%}}@media screen and (max-width:300px){.skill h1{font-size:1rem!important}.skill p{font-size:.755rem!important}}.social{display:flex;flex-direction:column;justify-content:center;align-items:center;text-decoration:none;transition:all .5s;-webkit-user-select:none;-moz-user-select:none;user-select:none}.social:hover img{opacity:.95;transform:translateY(0)}.social:hover p{opacity:1;transform:translateY(-5px)}.social p{color:hsla(0,0%,100%,.4);margin:10px 0 0;font-size:15px;opacity:0}.social img,.social p{transition:all .5s;transform:translateY(15px)}.social img{width:35px;opacity:.6}.social.patreon{flex-direction:row;background-color:#fff;padding:10px;border-radius:10px;border:none;outline:none;width:100%}.social.patreon img{opacity:1;margin:0 10px;transform:none}.social.patreon p{opacity:.8;margin:0;transform:none;color:#000;font-weight:600;background:none;transition:all .5s ease-in-out;transition:color .4s ease-in-out;text-shadow:1px 1px 5px rgba(0,0,0,.3)}.social.patreon:focus p,.social.patreon:hover p{opacity:1;animation:gold-shine 2s linear infinite;background:linear-gradient(90deg,#8b7500,#daa520,#fc0,gold,#b8860b);background-size:200%;-webkit-background-clip:text;background-clip:text;color:transparent}@keyframes gold-shine{0%{background-position:0}to{background-position:200%}}@media screen and (max-width:768px){.social img{width:30px}.social p{font-size:12px}}#timer{display:flex;justify-content:center;align-items:center;text-align:center;min-height:100vh;visibility:collapse}#secret_code_input{background-color:transparent;border:none;outline:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}#timer #title{display:flex;justify-content:center;align-items:center}#timer h1{color:hsla(0,0%,100%,.1);padding:0 10px}#timer #title h1{color:hsla(0,0%,100%,.8);padding:0 10px;font-size:40px}#timer #title h2{color:hsla(0,0%,100%,.5);font-size:25px}#timer #counter{color:hsla(0,0%,100%,.8)}#timer #counter,#timer #counter div{display:flex;justify-content:center;align-items:center}#timer #counter div{flex-direction:column;width:100px;height:125px;margin:0 20px;padding:10px;border-radius:10px;background-color:#101010}#timer #counter div h3{font-size:40px;margin:0}#timer #counter div p{margin:0;font-size:15px}@media screen and (max-width:786px){#timer #counter div{width:65px;height:80px;margin:0 5px;padding:5px}#timer #counter div h3{font-size:20px}#timer #counter div p{font-size:10px}#timer #title h1{font-size:20px;padding:0 10px}#timer #title h2{font-size:15px}}.project-filter{margin:20px 0 30px;position:relative;z-index:1}.filter-header{display:flex;justify-content:space-between;align-items:center;gap:15px;flex-wrap:wrap}.search-container{display:flex;gap:10px;flex:1 1;min-width:0}.search-input{flex:1 1;min-width:0;background-color:#181818;border:1px solid transparent;border-radius:10px;padding:12px 20px;color:#fff;font-size:16px;outline:none;transition:all .2s ease}.search-input::placeholder{color:hsla(0,0%,100%,.3)}.search-input:focus{background-color:#202020}.search-input:focus,.search-input:hover{border:1px solid hsla(0,0%,100%,.15)}.search-mode-toggle{display:flex;align-items:center;justify-content:center;background-color:#181818;border:1px solid transparent;border-radius:10px;padding:12px 20px;width:100px;flex-shrink:0;color:hsla(0,0%,100%,.8);font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;white-space:nowrap}.search-mode-toggle:hover{background-color:#202020;border:1px solid hsla(0,0%,100%,.15);color:hsla(0,0%,100%,.95)}.clear-all-tags{background-color:transparent;border:1px solid hsla(0,100%,70%,.3);border-radius:10px;flex-shrink:0;padding:12px 20px;color:hsla(0,100%,79%,.9);font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;white-space:nowrap}.clear-all-tags:hover{border-color:hsla(0,100%,70%,.5);background-color:hsla(0,100%,70%,.05)}.filter-tags{margin-top:15px}.tags-container{display:flex;flex-wrap:nowrap;align-items:center;gap:10px;padding:15px 20px;background-color:#181818;border-radius:10px;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin;scrollbar-color:hsla(0,0%,100%,.2) transparent}.category-label{color:hsla(0,0%,100%,.4);font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:1px;white-space:nowrap;font-style:italic;padding:0 5px}.tags-separator{width:2px;height:30px;background:linear-gradient(180deg,transparent,hsla(0,0%,100%,.2),transparent);margin:0 5px;flex-shrink:0}.tags-container::-webkit-scrollbar{height:8px}.tags-container::-webkit-scrollbar-track{background:transparent;border-radius:10px}.tags-container::-webkit-scrollbar-thumb{background:hsla(0,0%,100%,.2);border-radius:10px}.tags-container::-webkit-scrollbar-thumb:hover{background:hsla(0,0%,100%,.3)}.tag-button{background-color:#181818;border:1px solid transparent;border-radius:10px;padding:8px 16px;color:hsla(0,0%,100%,.7);font-size:14px;cursor:pointer;transition:all .2s ease;white-space:nowrap}.tag-button:hover{background-color:#202020;border:1px solid hsla(0,0%,100%,.15)}.active-tags-section{margin-top:15px;border-radius:10px}.active-tags-container{display:flex;flex-wrap:wrap;gap:8px}.active-tag{display:flex;align-items:center;gap:8px;background-color:#101010;border:1px solid hsla(0,0%,100%,.15);border-radius:10px;padding:8px 12px;color:hsla(0,0%,100%,.95);font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.active-tag:hover{background-color:#202020;border:1px solid hsla(0,0%,100%,.15)}.remove-icon{font-size:20px;line-height:1;opacity:.8;transition:opacity .2s ease}.active-tag:hover .remove-icon{opacity:1}.box_tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.box_tag{background-color:#181818;border:1px solid transparent;border-radius:10px;padding:4px 10px;color:hsla(0,0%,100%,.8);font-size:12px;font-weight:500;cursor:pointer;white-space:nowrap}.box_tag:hover{background-color:#202020;border:1px solid hsla(0,0%,100%,.15)}.no-projects{text-align:center;padding:60px 20px;color:hsla(0,0%,100%,.5);font-size:18px}.no-projects p{margin:0;opacity:.7}@media (max-width:768px){.filter-header{flex-direction:column;align-items:stretch}.search-container{min-width:auto;width:100%}.clear-filters{width:100%}.tags-container{padding:15px}.tag-button{font-size:13px;padding:7px 14px}}@media (max-width:480px){.search-input{padding:10px 16px;font-size:14px}.filter-toggle{width:44px;height:44px;padding:10px}.filter-icon{font-size:20px}.tags-container{gap:8px;padding:12px}.tag-button{font-size:12px;padding:6px 12px}.box_tag{font-size:11px;padding:3px 8px}}