#root{--c-lantern: hsl(23, 98%, 75%);--c-lantern-frame: hsl(262, 38%, 20%);--c-lantern-handle: var(--c-lantern-frame);--c-halo1: var(--sunset-orange5);--c-halo2: var(--sunset-orange4);--c-halo3: var(--sunset-orange3);--c-halo4: var(--sunset-orange2);--c-halo5: var(--sunset-orange1)}.scene{z-index:1;position:relative;display:flex;flex-direction:column;align-items:center;left:-170px;top:5px}.halo-container{position:absolute;top:-22px;left:-24px}.halo-sprite{width:300px;height:300px;background-repeat:no-repeat;transform:scale(.5)}.halo-sprite.idle{background-image:url(/sprites/halo_idle_sprite_sheet.png);animation:haloIdle 1.3s steps(18) infinite}.halo-sprite.off{background-image:url(/sprites/halo_off_sprite_sheet.png);animation:haloOff 1s steps(20) forwards}.halo-sprite.on{background-image:url(/sprites/halo_off_sprite_sheet.png);animation:haloOn 1s steps(20) forwards}@keyframes haloIdle{0%{background-position:0 0}to{background-position:-5400px 0}}@keyframes haloOff{0%{background-position:0 0}to{background-position:-6000px 0}}@keyframes haloOn{0%{background-position:-6000px 0}to{background-position:0 0}}.lantern-container{position:absolute;top:102px;left:112px}.lantern-sprite{width:28px;height:46px;background-repeat:no-repeat}.lantern-sprite.idle{background-image:url(/sprites/lantern_idle_sprite_sheet.png);animation:lanternIdle 1.3s steps(18) infinite}.lantern-sprite.off{background-image:url(/sprites/lantern_off_sprite_sheet.png);animation:lanternOff 1s steps(9) forwards}.lantern-sprite.on{background-image:url(/sprites/lantern_off_sprite_sheet.png);animation:lanternOn 1s steps(9) forwards}@keyframes lanternIdle{0%{background-position:0 0}to{background-position:-504px 0}}@keyframes lanternOff{0%{background-position:0 0}to{background-position:-252px 0}}@keyframes lanternOn{0%{background-position:-252px 0}to{background-position:0 0}}.lantern-chain-container{position:absolute;display:flex;align-items:center;flex-direction:column;z-index:5;transform:scaleY(-1);top:-156px;left:123px}.lantern-chain{margin:-1px;width:5px;height:auto}.lantern-chain:nth-child(3){margin-right:.5px}.lantern-box{position:absolute;width:50px;height:60px;z-index:12;top:90px;left:99px}.lantern-box:hover{cursor:pointer}#technologies{position:relative;z-index:5;margin-top:30px;width:100%;align-self:stretch}#new-technologies{display:flex;margin-top:30px;margin-bottom:30px;color:var(--light-slate)}.about-text{text-align:justify}.technology-type{position:relative;margin-bottom:20px}.tech-icon-container{font-size:5px;display:flex;width:27px;justify-content:center;margin:0 5px;color:var(--sunset-orange1);padding:4px 0;background:var(--navy);z-index:2}.tech-orb-container{font-size:5px;display:flex;justify-content:center;margin:0 5px;color:var(--sunset-orange1);padding:4px 0;background:var(--navy);z-index:2}.tech-icon{margin:0 1px}.page-list{display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;gap:20px;margin:0 10px}.skill{color:var(--light-slate);background:none;border:none;padding:0;font:inherit;text-align:left;cursor:pointer;white-space:nowrap;transition:color .35s ease}.skill:hover,.skill.active{color:var(--lightest-slate)}.skill-panels{position:absolute;left:0;right:0;top:calc(100% + 10px);z-index:20;display:grid;pointer-events:none}.skill-panel{position:relative;grid-area:1 / 1;align-self:start;width:100%;padding:14px 16px;border:1px solid var(--navy3);border-radius:.75rem;background:var(--navy2);box-shadow:0 16px 36px #00000073;display:flex;flex-direction:column;gap:8px;text-align:left;opacity:0;transform:translateY(6px);pointer-events:none;transition:opacity .4s ease,transform .4s ease}.skill-panel.visible{opacity:1;transform:translateY(0);pointer-events:auto}.skill-panel.visible:before{content:"";position:absolute;left:0;right:0;bottom:100%;height:14px}@media (prefers-reduced-motion: reduce){.skill,.skill-panel{transition:none}}.skill-panel-items{display:flex;flex-wrap:wrap;gap:6px 16px;color:var(--light-slate)}.skill-columns{display:grid;grid-template-columns:1fr 1fr;gap:4px 28px}.skill-columns-single{grid-template-columns:1fr}.skill-column{display:flex;flex-direction:column;gap:12px;min-width:0}.skill-column-label{font-size:10px;letter-spacing:1px;text-transform:uppercase;color:var(--sunset-orange1-tint2)}.skill-project{display:flex;align-items:flex-start;gap:10px;text-decoration:none;color:inherit}.skill-project img{width:36px;height:36px;border-radius:6px;object-fit:cover;flex-shrink:0}.skill-project-text{display:flex;flex-direction:column;gap:2px;min-width:0}.skill-project-name{color:var(--lightest-slate);font-size:.9rem;transition:color .2s ease}.skill-project:hover .skill-project-name{color:var(--sunset-orange1)}.skill-project-note{color:var(--slate);font-size:12px;line-height:1.4}.technology-list{display:flex;justify-content:space-between;align-items:center;width:100%;margin:0}.technology-container,.new-tech-container{display:flex;align-items:center}.tech-title{font-size:10px;text-align:center;width:100%;margin-bottom:22px;color:var(--sunset-orange1-tint2)}.rust-tech{position:relative}#about-section{display:flex;flex-direction:column;align-items:center}#about-character-container{position:relative;width:90%}#about-container{display:flex;flex-direction:column}.orb-grey{--c1: var(--white);--c2: var(--slate);--c3: var(--light-slate);margin-left:3px;width:3px;height:3px;border-radius:50%;box-shadow:inset 0 0 2px var(--c1),inset 1px 0 2px var(--c2),inset -1px 0 2px var(--c3),inset 1px 0 4px var(--c2),inset -1px 0 3px var(--c3),0 0 1px var(--c1),-0px 0 1px var(--c2),0 0 1px var(--c3);animation:load 2s linear infinite}.tech-orb{--c1: var(--white);--c2: var(--sunset-orange1);--c3: var(--sunset-orange3);margin-left:3px;width:6px;height:6px;border-radius:50%;box-shadow:inset 0 0 2px var(--c1),inset 1px 0 2px var(--c2),inset -1px 0 2px var(--c3),inset 1px 0 4px var(--c2),inset -1px 0 3px var(--c3),0 0 1px var(--c1),-0px 0 1px var(--c2),0 0 1px var(--c3);animation:load 2s linear infinite}@keyframes load{0%{transform:rotate(0);filter:hue-rotate(0deg)}50%{filter:hue-rotate(30deg)}to{transform:rotate(360deg)}}.ferris-bubble{--crab-body: rgba(229, 52, 16, 255);z-index:-1;visibility:hidden;opacity:1;top:-20px;left:75px;padding:6px 8px;position:relative;width:300px}.ferris-bubble p{color:var(--sunset-orange1);font-weight:100;font-size:30px;margin-block-end:0em;margin-block-start:0em;visibility:hidden;white-space:nowrap;margin:none;padding:none}.ferris-container{padding:20px;position:absolute;right:-25px;top:-12px}.ferris-container:hover .ferris-bubble{visibility:visible}.ferris-container:hover .ferris-bubble p{visibility:visible;overflow:hidden;animation:typing .4s steps(30,end)}.page-container{display:flex}@media (max-width: 800px){#about-character-container{width:100%}.technology-list{flex-wrap:wrap;row-gap:12px}.technology-list .circle{display:none}.skill{white-space:normal}}@media (max-width: 650px){.technology-type{display:flex;align-items:stretch;flex-direction:column;width:100%;padding:10px 0}.technology-list{flex-direction:column;align-items:flex-start;gap:12px;width:100%}.technology-list .circle{display:none}.skill-columns{grid-template-columns:1fr;gap:16px}.skill-project-note{font-size:11px}}.character-container{display:flex;position:absolute}.character-box{position:relative}.character{position:absolute;width:26px;height:28px;background-repeat:no-repeat;top:0;left:0;transform-origin:12px 0 0;z-index:1}.character.idle{background-image:url(/sprites/character_idle_sprite_sheet.png);animation:characterIdle .5s steps(4) infinite}.character.running{background-image:url(/sprites/character_running_sprite_sheet.png);animation:characterRunning .5s steps(4) infinite}@keyframes characterIdle{0%{background-position:0 0}to{background-position:-104px 0}}@keyframes characterRunning{0%{background-position:0 0}to{background-position:-108px 0}}.character.left{transform:scaleX(-1)}.character.right{transform:scaleX(1)}.character-bubble{z-index:-1;opacity:1;top:-20px;left:25px;position:absolute}.character-bubble p{color:var(--pink);align-items:center;display:flex;font-size:.5em;gap:4px;white-space:nowrap;animation:bobbing .2s infinite alternate}@keyframes bobbing{0%{transform:translateY(0)}to{transform:translateY(-1px)}}.experience-title{align-items:center;font-size:1rem;margin-bottom:1rem;color:var(--lightest-slate)}.exp-name{font-size:.8rem;letter-spacing:1px;text-decoration:none;transition:.2s ease-out;color:var(--light-slate)}.exp-type{white-space:nowrap}.exp-description{text-align:left}.exp-name:hover{color:var(--sunset-orange1)}.exp-date{white-space:nowrap;min-width:max-content;flex-shrink:0}#experiences .exp-date{width:13em;min-width:13em;text-align:right}@media (max-width: 650px){#experiences .exp-date{width:auto;min-width:0;text-align:inherit}}@media (max-width: 480px){.exp-type{white-space:normal}.experience-title{text-align:center}.exp-date{min-width:0px}}.tool2{position:relative;color:var(--sunset-orange1-tint3);display:flex;align-items:center;justify-content:center;padding:.25rem .5rem;font-size:.8rem;font-weight:100}.tool-box{z-index:-1;position:absolute;width:100%;height:100%;background-color:var(--sunset-orange1-tint);border:1px solid var(--navy);border-radius:.5rem;transition:transform .2s ease-out,border-color .2s ease-out;transform:scale(.98)}.tool2:hover .tool-box{transform:scale(1.1);border-color:var(--sunset-orange1-tint2)}.linked-header{display:flex;align-items:flex-start;justify-content:space-between;font-size:1rem;margin-bottom:1rem;text-decoration:none;color:var(--lightest-slate);transition:color .2s ease;cursor:pointer}.linked-header:hover{color:var(--sunset-orange1)}.linked-header-container{flex:1;word-wrap:break-word;text-align:left}.arrow{font-size:14px;top:-2px;right:-10px;transform:rotate(45deg);transition:transform .2s ease}.linked-header:hover .arrow{transform:rotate(45deg) translateY(-5px)}@media (max-width: 480px){.linked-header-container{text-align:center}}.event-content{display:flex;flex-direction:column;gap:.5rem}.event-container{display:flex;align-items:center;gap:2rem;padding:.5rem 2rem;border:1px solid transparent;transition:.2s ease-in;border-radius:.5rem}.event-container:hover{background:var(--purple-tint0);box-shadow:0 4px 30px #0000001a;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(10px);border:1px solid var(--purple-tint3);cursor:pointer}#event-text{display:flex;flex-direction:column;position:relative;justify-content:center;padding:0;margin:0}.event-title{align-items:center;font-size:.9rem;color:var(--lightest-slate)}.location{font-size:.8rem;letter-spacing:1px;text-decoration:none;margin-top:2px;color:var(--light-slate)}.event-name{white-space:nowrap}.event-date{white-space:nowrap;margin:3px 0}.event-row1{display:flex;gap:10px;align-items:center}.project-details.off{visibility:hidden;overflow:hidden;max-height:0}.project-details.on{visibility:visible}.event-links{display:flex;margin-left:-10px;gap:10px}@media (max-width: 650px){.event-container{flex-direction:column}}@media (max-width: 480px){.event-name{white-space:normal}.event-title{text-align:center;align-items:center}#event-text{display:flex;flex-direction:column}.event-links{justify-content:center}.event-row1{display:flex;flex-direction:column;align-items:center}}.link-icon{font-size:6px;z-index:2}.link-name{font-size:10px;z-index:2}.link-container-hidden{--c1: var(--white);--c2: var(--slate);--c3: var(--light-slate);text-decoration:none;background:var(--navy);color:var(--light-slate);align-items:center;display:flex;gap:5px}.link-conainer-hidden:hover{color:var(--white)}.link-container{--offset: 1px;--c1: var(--white);--c2: var(--slate);--c3: var(--light-slate);text-decoration:none;border-radius:5px;background:transparent;z-index:1;display:flex;color:var(--light-slate);align-items:center;gap:5px;position:relative;margin-left:3px;padding:6px 10px;overflow:hidden}@keyframes rotate{0%{transform:translate(-50%,-50%) scale(1.4) rotate(0)}to{transform:translate(-50%,-50%) scale(1.4) rotate(1turn)}}.link-container:hover{color:var(--white)}.terminal-container{width:100%;border:1px solid black;border-radius:10px}.navbar,.window{display:flex;align-items:center;padding:0 10px}.navbar{height:30px;background-color:#1b1d1e;border-top-left-radius:10px;border-top-right-radius:10px;justify-content:space-between}.nav-left{gap:16px;display:flex;flex-direction:row;align-items:center}.ostabs{display:flex;gap:20px}.ostab{font-size:10px;text-decoration:none;background:transparent;border:none;color:#484848;transition:all .2s;cursor:pointer}.ostab.active{color:var(--slate)}.window{height:50px;background-color:#000;border-bottom-left-radius:10px;border-bottom-right-radius:10px;gap:10px}.dots{display:flex;gap:5px}.dot{background-color:#484848;height:7px;width:7px;border-radius:50%}.command-line{font-size:16px;font-family:Courier New,monospace;color:#7cfc00;color:var(--lightest-slate);display:flex;gap:10px;align-items:center}.copy-button{margin:0 5px;background-color:#1b1d1e;color:var(--light-slate)}.copy-button:hover{color:var(--lightest-slate);cursor:pointer}@keyframes typing{0%{width:0}to{width:100%}}.typing{overflow:hidden;white-space:nowrap;border-right:3px solid;animation:typing 3s steps(40,end),blink-caret .75s step-end infinite}@keyframes blink-caret{0%,to{border-color:transparent}50%{border-color:#000}}@media (max-width: 650px){.terminal-container{width:100%}.command-line{font-size:12px}}.container{width:100%}.Home{display:flex;flex-direction:column;position:relative}.custom-cursor{position:absolute;width:20px;height:20px;border-radius:50%;pointer-events:none;z-index:1000;box-shadow:0 0 10px 5px #00000080;transform:translate(-50%,-50%);transition:opacity .3s ease-out}.intro-section{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;margin:10vh auto}.sections{z-index:2;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;margin:auto;width:70%;max-width:1200px}.mini-section{position:absolute;right:10%;top:100px}.lab-container{position:relative;width:130px;overflow:hidden}.lab-handle{background:var(--darkest-slate);border-radius:5px;content:"";display:block;height:5px}.lab-handle.top{top:10px}.lab-handle.bottom{background:var(--very-dark-slate)}.lab-body{display:flex}.lab-chain{width:3px;--c0: var(--very-dark-slate);--c: var(--darkest-slate);--c1: var(--dark-slate);--c2: var(--slate);background-color:var(--c);box-shadow:0 -2px 0 2px var(--c),0 10px 0 var(--c),0 20px 0 var(--c1),0 30px 0 var(--c),0 40px 0 var(--c1),0 50px 0 var(--c1),0 60px 0 var(--c1),0 70px 0 var(--c),0 80px 0 2px var(--c0);border-radius:50%;content:"";display:block;height:3px;margin:0 auto}.lab-chain:before{position:absolute;width:1px;height:100%;background-color:var(--c1);content:"";z-index:-1;margin-left:1px}.lab-content{display:flex;flex-direction:column;align-items:center;font-family:Georgia,serif;margin:10px 5px}.lab-content h1{font-size:.8em;text-align:center;margin-bottom:30px}.lab-content div a{font-size:.9em;text-align:justify}.container{flex-direction:column;display:flex;align-items:center;background-color:transparent}.intro-container{position:relative;display:flex}.intro{display:flex;flex-direction:column;align-items:center;font-weight:700;margin:0;z-index:2}.title{font-size:1.8em;font-weight:300;margin:0 0 10px;color:var(--white)}.subtitle-container{display:flex;align-items:center;margin-bottom:5vh;gap:60px}.subtitle{font-weight:300;font-size:1em;margin:0;color:var(--slate)}.icon-container{display:flex;justify-content:left;align-items:center;gap:10px}.circle{width:1px;height:8px;border-radius:1px;border:1px dotted var(--slate)}.contact-link{font-size:12px;font-weight:300;color:var(--slate);transition:color .3s}.contact-link:hover{color:var(--white)}.img-overlay{position:relative;display:flex;z-index:2;width:180px;border:2px solid var(--dark-slate);padding:0;border:none;margin:0;border-radius:5px}.showcase-img-container{display:block}.img-overlay:before{content:"";display:block;position:absolute;z-index:-1;border-radius:5px;border:2px solid var(--dark-slate);top:-2px;left:-2px;width:100%;height:100%;background-color:#0000004d;transition:background-color .3s}.img-overlay:hover:before{cursor:pointer;border:2px solid var(--purple);background-color:var(--purple-tint4)}.showcase-img{display:block;width:100%;height:auto;z-index:-2;border-radius:3px;object-fit:fill}.expanded-img{position:fixed;top:50%;left:50%;width:80%;max-width:800px;transform:translate(-50%,-50%);z-index:1000;opacity:1!important;border:5px solid var(--dark-slate);border-radius:5px}.fullscreen-overlay{position:absolute;top:0;right:0;width:100%;height:100%;background-color:#000c;z-index:999;display:flex;align-items:center;justify-content:center}.content-container{display:flex;width:100%;flex-direction:column}.title-container{margin:0;display:flex;align-items:left}.section-title{font-size:.8rem;font-weight:500;color:var(--lightest-slate);letter-spacing:2px;margin:0 20px}.subsection-title{display:flex;font-size:.7rem;font-weight:500;color:var(--lightest-slate);letter-spacing:2px;margin-bottom:1rem}.section-content{margin:2rem;font-size:14px}.word-link{color:var(--lightest-slate);font-weight:400;transition:.2s ease-out}.word-link:hover{color:var(--sunset-orange1)}.word-link2{font-weight:400;color:var(--light-slate);transition:.2s ease-out}.word-link2:hover{color:var(--sunset-orange1)}.scroll-target{scroll-margin-top:24px}.project-container{display:flex;margin:2rem 0}.project-text{margin:0 3rem;width:100%;text-align:justify}.project-description{font-weight:400;letter-spacing:.5px}.subprojects{display:flex;flex-direction:column}.subprojects .project-description{letter-spacing:.2px;font-weight:300;font-size:12px}.subprojects .project-container{margin:1rem 0}.subproject-title{font-size:.9rem;color:var(--lightest-slate);text-decoration:none;text-align:left}.subproject-title-container{display:flex;gap:20px;align-items:center}.subproject-technologies{display:flex;font-size:.8rem;gap:5px;color:var(--dark-slate)}.project-title{align-items:center;font-size:1rem;color:var(--lightest-slate);margin-bottom:1rem;text-decoration:none;text-align:left}.project-tools{gap:10px;margin-top:20px;display:flex;position:relative;flex-wrap:wrap}#dns{width:100%;margin:100px 0}#blog{width:100%;margin:20px 0 100px}#dns-content{display:flex;flex-direction:column;align-items:center;gap:30px;width:600px}#dns-text{text-align:center;display:flex;flex-direction:column;gap:5px}#dns-text p{margin:0}#dns-text p:first-child{color:var(--lightest-slate)}#dns-container{align-items:center}@media (max-width: 1200px){.sections{width:90%}}@media (max-width: 800px){.sections{width:100%}.project-text{margin:0 2rem}.img-overlay{width:150px}}@media (max-width: 650px){.showcase-img-container{margin-bottom:15px}.project-container{flex-direction:column}.sections{width:100%}.project-text{margin:0}#dns-content{margin:0;width:90%}}@media (max-width: 480px){.intro{display:flex;flex-direction:column;align-items:center}.content-container,.title-container{align-items:center}.project-container{align-items:center;text-align:center}.project-title{text-align:center}.title{font-size:1.25em;font-weight:700}.subtitle-container{flex-direction:column;gap:10px}.subtitle{font-size:1rem}.icon-container .fa{font-size:15px}.project-tools{justify-content:center}.subproject-title-container{flex-direction:column;gap:0}.subproject-title{text-align:center;margin-bottom:0}.subprojects{align-items:center}#events{width:100%}}.test-container{width:100%;justify-content:center;margin-bottom:200px}.thumbnail-container{display:flex;flex-direction:column;align-items:center;justify-content:center;width:90%;max-width:800px}.thumbnail-inner-container{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%}.export-btn{align-self:flex-start;border:1px solid var(--light-navy);background:none;color:var(--lightest-navy);padding:.6rem;border-radius:.2rem}.export-btn:hover{background:var(--light-navy);color:var(--navy);cursor:pointer}.thumbnail-box{margin-top:.5rem;border:1px solid var(--light-navy);border-radius:.1rem;max-width:800px;min-width:480px;width:100%;aspect-ratio:1280 / 769;font-size:1.2rem}.thumbnail{display:flex;align-items:center;justify-content:center;width:100%;height:100%;box-sizing:border-box;background:linear-gradient(to right,#14131e,#181725)}.thumbnail-content{display:flex;flex-direction:column;align-items:center;margin:-2.5rem 0 0}.thumb-title{display:flex;align-items:center}.thumb-tags{color:var(--lightest-navy);font-size:.9rem;font-size:clamp(.4em,2vw,.9em);margin:0 1rem;letter-spacing:1px;text-shadow:0 0 7px rgba(148,139,235,1)}.thumb-tags.inner{color:var(--slate);font-size:clamp(.3em,3vw,.8em);margin:0 .4rem;text-shadow:0 0 0px rgba(148,139,235,1)}.thumb-title h1{color:#fff;font-size:clamp(1em,3vw,2em);text-shadow:0 0 4px rgba(255,255,255,.7),0 0 8px rgba(255,255,255,.5)}.thumb-icon{width:clamp(3em,15vw,8em)}.thumb-body{display:flex;align-items:center}.thumb-items{display:flex}.thumb-item{display:flex;align-items:center;color:var(--lightest-slate);font-size:clamp(.4em,2vw,1em)}.thumb-footer{padding:2rem 0 0;gap:1rem;display:flex;align-items:center}.thumb-footer img{width:clamp(1em,5vw,3em)}#django,#mysql{width:5rem}.thumbnails{display:flex;flex-direction:column;justify-content:center;align-items:center;margin:5rem 0;width:100%}.Converter{display:flex;flex-direction:column;justify-content:center;height:100vh}.converter-section{width:70%;display:flex;align-items:flex-start;justify-content:center;margin:auto;flex-direction:column;align-items:center;font-weight:100}.converter-content{width:100%;max-width:500px;display:flex;flex-direction:column}.output-container{margin-bottom:20px}.output{text-align:center;margin-bottom:10px}.output-header{display:flex;flex-direction:row;justify-content:end;margin:5px}.output-value{color:var(--slate);border-bottom:1px dotted var(--slate);overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.input-text{font-size:2em;text-align:center;background-color:transparent;border:none;color:var(--sunset-orange1);outline:none;border-bottom:1px dotted var(--sunset-orange1-tint2);font-weight:100}.input-text::placeholder{color:var(--sunset-orange1-tint2);font-weight:100}.input-text:focus::placeholder{color:transparent}.hex-note{margin-top:20px;font-size:.9em}.hex-note span{color:var(--lightest-slate);font-weight:500}@media (max-width: 800px){.converter-section{width:100%}}@font-face{font-family:JetBrainsMono;src:url(/fonts/JetBrainsMono-Regular.woff2) format("woff2");font-weight:400;font-style:normal}@font-face{font-family:JetBrainsMono;src:url(/fonts/JetBrainsMono-Italic.woff2) format("woff2");font-weight:400;font-style:italic}@font-face{font-family:JetBrainsMono;src:url(/fonts/JetBrainsMono-Bold.woff2) format("woff2");font-weight:700;font-style:normal}@font-face{font-family:JetBrainsMono;src:url(/fonts/JetBrainsMono-BoldItalic.woff2) format("woff2");font-weight:700;font-style:italic}@font-face{font-family:JetBrainsMono;src:url(/fonts/JetBrainsMono-ExtraBold.woff2) format("woff2");font-weight:800;font-style:normal}@font-face{font-family:JetBrainsMono;src:url(/fonts/JetBrainsMono-ExtraBoldItalic.woff2) format("woff2");font-weight:800;font-style:italic}@font-face{font-family:JetBrainsMono;src:url(/fonts/JetBrainsMono-ExtraLight.woff2) format("woff2");font-weight:200;font-style:normal}@font-face{font-family:JetBrainsMono;src:url(/fonts/JetBrainsMono-ExtraLightItalic.woff2) format("woff2");font-weight:200;font-style:italic}@font-face{font-family:JetBrainsMono;src:url(/fonts/JetBrainsMono-Light.woff2) format("woff2");font-weight:300;font-style:normal}@font-face{font-family:JetBrainsMono;src:url(/fonts/JetBrainsMono-LightItalic.woff2) format("woff2");font-weight:300;font-style:italic}@font-face{font-family:JetBrainsMono;src:url(/fonts/JetBrainsMono-Medium.woff2) format("woff2");font-weight:500;font-style:normal}@font-face{font-family:JetBrainsMono;src:url(/fonts/JetBrainsMono-MediumItalic.woff2) format("woff2");font-weight:500;font-style:italic}@font-face{font-family:JetBrainsMono;src:url(/fonts/JetBrainsMono-SemiBold.woff2) format("woff2");font-weight:600;font-style:normal}@font-face{font-family:JetBrainsMono;src:url(/fonts/JetBrainsMono-SemiBoldItalic.woff2) format("woff2");font-weight:600;font-style:italic}@font-face{font-family:JetBrainsMono;src:url(/fonts/JetBrainsMono-Thin.woff2) format("woff2");font-weight:100;font-style:normal}@font-face{font-family:JetBrainsMono;src:url(/fonts/JetBrainsMono-ThinItalic.woff2) format("woff2");font-weight:100;font-style:italic}:root{--dark-navy: #020c1b;--navy: #171521;--navy2: #28253b;--navy3: #443f65;--light-navy: #595386;--lightest-navy: #8a80d0;--navy-shadow: rgba(2, 12, 27, .7);--dark-slate: #495670;--darkest-slate: #30424a;--very-dark-slate: #24333a;--slate: #8892b0;--light-slate: #a8b2d1;--lightest-slate: #ccd6f6;--white: #e6f1ff;--purple: #9a64ff;--char-purple: #222034;--pink: #E286C5;--purple-tint0: rgba(154, 100, 255, .05);--purple-tint: rgba(154, 100, 255, .1);--purple-tint3: rgba(154, 100, 255, .3);--purple-tint4: rgba(154, 100, 255, .5);--fade-100: 253deg 28% 12%;--fade-200: 253deg 28% 24%;--sunset-orange1: #ff6f4b;--sunset-orange2: #fd4c55;--sunset-orange3: #e13661;--sunset-orange4: #c1246b;--sunset-orange5: #a11477;--sunset-orange5-light: #cf51a9;--sunset-orange1-tint: rgba(255, 111, 75, .1);--sunset-orange2-tint: rgba(253, 76, 85, .1);--sunset-orange3-tint: rgba(225, 54, 97, .1);--sunset-orange4-tint: rgba(193, 36, 107, .1);--sunset-orange5-tint: rgba(161, 20, 119, .1);--sunset-orange1-tint2: rgba(255, 111, 75, .6);--sunset-orange5-tint2: rgba(161, 20, 119, .4);--sunset-orange1-tint3: rgba(255, 111, 75, .8);--halo-pixel-size: 2px;--lantern-pixel-size: 1px}h1,h2,h3{margin:0;font-weight:300}body{margin:0;background-color:var(--navy);background:linear-gradient(to right,#14131e,#181725);color:var(--slate);font-weight:300;line-height:1.5;font-family:Merriweather,serif;font-family:Montserrat,sans-serif;font-family:JetBrainsMono,monospace}input{font-variant-ligatures:none;font-weight:400;font-family:Merriweather,serif;font-family:Montserrat,sans-serif;font-family:JetBrainsMono,monospace}button{margin:0;padding:0}a{text-decoration:none}.reg-container{width:100%;display:flex;flex-direction:column;justify-content:center;align-items:center}.regex-navbar{display:flex;justify-content:center;align-items:center;background-color:transparent;padding:20px 0;z-index:100}.regex-navbar-title{font-size:1.5em;color:var(--slate);font-weight:300}.reg-section{width:100%;margin-top:5em;display:flex;align-items:flex-start;justify-content:center;flex-direction:column;align-items:center;font-weight:100}.problem-container{width:100%;display:flex;align-items:center;flex-direction:column}.problem-text-container{max-width:1000px;padding:0 2em;margin-bottom:1em}.problem-text{padding:.8em;border-radius:.5em;font-weight:400;color:var(--slate);text-align:left}.regex-header{display:flex;flex-direction:row;justify-content:end;margin:5px}.copy-hex-button{display:flex}.copy-hex-button:hover{cursor:pointer}.regex-description{color:var(--slate);font-size:1em;font-weight:400;text-align:left}.regex-difficulty{font-size:1em;font-weight:500;margin-bottom:15px;text-align:left}.inline-code{background-color:var(--navy2);padding:2px 6px;border-radius:3px;font-family:JetBrainsMono,monospace}.problem-bot-container{width:100%;max-width:700px;border-top:1px solid var(--navy2);display:flex;flex-direction:column;align-items:center;padding:1em 2em;box-sizing:border-box}.problem-info-container{width:100%;display:flex;flex-direction:column;align-items:flex-start}.input-row{display:flex;flex-direction:row;align-items:center;gap:5px;width:100%}.regex-separator{color:var(--sunset-orange1);font-size:1.4em;font-weight:400}.input-text{font-size:1.2em;text-align:left;background-color:transparent;border:none;color:var(--sunset-orange1);outline:none;border-bottom:1px dotted var(--sunset-orange1-tint2);font-weight:400}.input-text::placeholder{color:var(--sunset-orange1-tint2);font-weight:400;opacity:1}.input-text:focus:placeholder-shown::placeholder{color:var(--sunset-orange1-tint2);opacity:1}.input-regex{flex:1}.input-flags{width:60px}.validation-message{font-size:1em;font-weight:400;text-align:left;padding:8px 12px;border-radius:4px;line-height:1.5}.validation-message.correct{color:#4caf50;background-color:#4caf501a}.validation-message.incorrect{color:#f44336;background-color:#f443361a}.next-problem-button{font-size:1em;font-weight:400;text-align:left;padding:8px 12px;border-radius:4px;line-height:1.5;border:none;background-color:var(--navy2);color:var(--slate);cursor:pointer;font-family:inherit;transition:background-color .2s ease}.next-problem-button:hover{background-color:var(--navy3)}.next-problem-button:active{background-color:var(--navy)}.next-problem-button:focus{outline:1px solid var(--lightest-navy)}.regex-subtext{display:flex-box;width:100%;color:var(--sunset-orange1-tint2);font-size:.7em;font-weight:100;margin-top:8px;text-align:left;font-weight:400}.highlight{color:var(--navy);background-color:var(--lightest-navy);font-weight:500}.problem-label{color:var(--slate);font-weight:500}@media (max-width: 800px){.reg-section{width:100%}}
