@import"https://fonts.googleapis.com/css2?family=Noto+Color+Emoji&display=swap";:root{--background-color: #121212;--text-color: white;--font-family: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif}body{background-color:var(--background-color);color:var(--text-color);font-family:var(--font-family)}.art-card{position:relative;display:flex;box-shadow:0 4px 8px #0003;border:none;width:100%;height:100%;overflow:hidden;border-radius:16px}.art-card .art-image{width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.87,0,.66,1.03)}.art-card .art-title{border-bottom:5px solid azure;border-bottom-left-radius:.2em}.art-card .card-content{position:absolute;align-self:flex-end;text-align:left;color:#fff;background-image:linear-gradient(transparent,#000000b9,#000);transition:.6s cubic-bezier(.87,0,.66,1.03);transform:translateY(100%);opacity:0;font-size:2em;padding-left:.5em}.art-card:hover,.art-card:focus-visible{cursor:pointer}:is(.art-card:hover,.art-card:focus-visible) .card-content{transition:.6s cubic-bezier(.28,-.02,0,1.04);transform:translateY(0);opacity:1}:is(.art-card:hover,.art-card:focus-visible) .art-image{transform:scale(1.05)}.art-card.state-machine{grid-column:1;grid-row:1 / span 2}.art-card.electric-passage{grid-column:2;grid-row:1}.art-card.sphinx-of-hatshepsut{grid-column:2;grid-row:2}.modal-background{position:fixed;width:100%;height:100vh;inset:0;margin:0;padding:0;display:flex;justify-content:center;align-items:center;isolation:isolate;z-index:1000;background-color:#0000;pointer-events:none;opacity:0;transition:background-color .3s ease-in-out,opacity .3s ease-in-out}.modal-background.visible{background-color:#000000b3;pointer-events:auto;opacity:1;transition:opacity .3s ease-in-out}.modal-background .modal{--border-radius: 1em;--padding: 1em;position:relative;background-color:#222;border-radius:var(--border-radius);box-shadow:0 4px 8px #0003;padding:var(--padding);max-width:90vw;max-height:90vh;overflow:auto;display:grid;gap:1em;min-width:min(900px,90vw);min-height:min(500px,80vh)}.modal-background .modal .art-image-wrapper{display:flex;justify-content:center}.modal-background .modal .art-image-wrapper img{height:100%;object-fit:contain;border-radius:calc(var(--border-radius) + var(--padding))}.modal-background .modal .art-info{height:100%;display:flex;flex-direction:column}.modal-background .modal .art-info .art-metadata{border-color:#fff;border-bottom-width:2px;border-bottom-style:dotted}.modal-background .modal .art-info .art-description{margin-top:1em}.modal-background .modal.portrait{min-width:min(1000px,90vw);min-height:70vh;grid-template-columns:repeat(2,minmax(0,1fr));align-items:center}.modal-background .modal.portrait .art-image-wrapper img{max-width:100%;max-height:85vh}.modal-background .modal.landscape{min-width:min(1000px,90vw);min-height:65vh;grid-template-rows:repeat(2,minmax(0,1fr))}.modal-background .modal.landscape .art-image-wrapper img{max-height:55vh}.modal-background .modal .close-button{position:absolute;aspect-ratio:1;height:5em;display:flex;justify-self:flex-end;align-items:center;justify-content:center;border-bottom-left-radius:var(--border-radius);border:none;background-color:transparent;color:#fff;cursor:pointer;transition:background-color 167ms cubic-bezier(.33,1,.68,1)}.modal-background .modal .close-button:hover,.modal-background .modal .close-button:focus-visible{background-color:red}main.main[data-path="/art-appreciation-portfolio"] .art-grid{display:grid;grid-template-columns:5fr 7fr;grid-template-rows:1fr 1fr;gap:1rem;height:100svh;padding:2rem;box-sizing:border-box}@keyframes wave-animation{0%{transform:rotate(0)}10%{transform:rotate(14deg)}20%{transform:rotate(-8deg)}30%{transform:rotate(14deg)}40%{transform:rotate(-4deg)}50%{transform:rotate(10deg)}60%{transform:rotate(0)}to{transform:rotate(0)}}.wave{animation:wave-animation 2s linear;display:inline-block;font-family:"Noto Color Emoji",sans-serif}main.main[data-path="/"]{text-align:center;font-size:2em}.navigation{height:60px;max-width:90%;background-color:#151515b3;border-radius:.7rem;justify-self:center;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);position:sticky;top:1.5em;display:flex;align-items:center;gap:.7em;box-shadow:0 4px 6px #ffffff4d;z-index:999}.nav-li{list-style:none}.nav-link{color:#fff;text-decoration:none;background-color:transparent;border:white 1px solid;border-radius:.5em;padding:.2em;text-align:center;scale:1;transition:background-color .2s ease,scale .2s ease,font-weight .2s ease,translate .2s ease,outline-width .2s cubic-bezier(.16,1,.3,1);translate:0;outline:rgb(1,90,192) 0px solid;display:inline-block}.nav-link:hover,.nav-link:focus-visible{translate:0 -.25em;outline-width:3px;outline-offset:-3px}.nav-link.active{font-weight:700;background-color:#555}.nav-button-container{display:flex;flex-direction:row;gap:.5em;list-style:none;margin:0 .5em 0 0;padding:0}.nav-toggle{background:none;margin-left:.5em;border:none;cursor:pointer;padding:.5em;aspect-ratio:1;height:100%;transition:rotate .2s cubic-bezier(.16,1,.3,1),scale .2s cubic-bezier(.16,1,.3,1);rotate:0deg}.nav-toggle:hover,.nav-toggle:focus-visible{scale:1.3}.nav-toggle img{width:100%;height:100%}.nav-toggle:not(.active){rotate:-30deg;scale:1.2}.nav-toggle:not(.active):hover,.nav-toggle:not(.active):focus-visible{scale:1.4}@keyframes error-glow{0%{-webkit-filter:brightness(1.5) drop-shadow(0 0 .25em rgba(255,93,93,.692));filter:brightness(1.5) drop-shadow(0 0 .25em rgba(255,93,93,.692))}}.error-title{color:#ff4f4f;font-weight:700;text-align:center;margin-top:2em;font-size:3em;animation:.3s ease-in-out 0s infinite alternate none running error-glow}.error-message{list-style:none;text-align:center;font-size:1.5em;margin-top:1em;padding:0;width:100%;display:flex;align-items:center;justify-content:center;flex-direction:row;gap:.5em}.error-pathname{font-size:1em;font-weight:700}.error-pathname span{background:#333;padding:.2em .4em;border-radius:.3em;color:#fff;font-family:monospace;font-size:2em;display:inline-block;overflow-x:auto;max-width:15em;white-space:nowrap}.back-to-home-container{display:flex;justify-content:center;margin-top:2em;font-size:2em}*,*:before,*:after{box-sizing:border-box;margin:0;inset:0;padding:0}html{scrollbar-gutter:stable}body{overflow-x:hidden}#root{margin:0 auto;padding:2rem}main.main{margin-top:1.3em}::-webkit-scrollbar{width:16px}::-webkit-scrollbar-track{border-radius:8px}::-webkit-scrollbar-thumb{height:56px;border-radius:8px;border:4px solid transparent;background-clip:content-box;background-color:#888}::-webkit-scrollbar-thumb:hover{background-color:#555}
