@import url("https://fonts.googleapis.com/css2?family=Open+Sans:ital,wght@0,500;0,700;1,800&family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&display=swap");*{box-sizing:border-box;padding:0;margin:0}body{font-family:Roboto,ui-sans-serif,system-ui,-apple-system;background-color:#0f172a;color:#e2e8f0}ul{list-style-type:none}h2{font-weight:400}dialog{&[open]{position:fixed;width:80vw;height:50vh;min-height:270px;top:50%;left:50%;transform:translate(-50%,-50%);z-index:999;background:rgba(30,41,59,.95);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(0,255,65,.5);border-radius:16px;box-shadow:0 0 50px rgba(0,255,65,.3);color:#e2e8f0;& article{background-color:unset}}& form{display:flex;flex-direction:column;justify-content:space-between;height:100%}& h3{color:white;font-size:1.5rem;font-weight:700}& footer{padding-right:20px}&::-webkit-backdrop{background-color:rgba(15,23,42,.8);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}&::backdrop{background-color:rgba(15,23,42,.8);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}}footer{& button{--tw-shadow:0 1px 3px 0 rgb(0 0 0/0.1),0 1px 2px -1px rgb(0 0 0/0.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow);text-transform:uppercase;font-size:1rem;font-weight:600;outline:0;border:0;padding:12px 24px;cursor:pointer;border-radius:8px;transition:all .3s ease}& .button--cancel{color:#94a3b8;background-color:#1e293b;border:1px solid #334155}& .button--cancel:hover{background-color:#334155;color:#e2e8f0}& .button--confirm{background:linear-gradient(135deg,#003d00,#00ff41);color:white;box-shadow:0 0 20px rgba(0,255,65,.5)}& .button--confirm:hover{box-shadow:0 0 30px rgba(0,255,65,.8);transform:translateY(-2px)}& menu{display:flex;justify-content:flex-end;padding:20px 0;gap:20px}}header{background:linear-gradient(135deg,#003d00,#00ff41 50%,#00cc33);color:white;display:flex;justify-content:space-between;padding:1rem 1.5rem;align-items:center;box-shadow:0 4px 20px rgba(0,255,65,.4);& img{height:2rem}& ul{display:none;position:absolute;width:220px;z-index:99}& a{text-decoration:none;color:white;transition:opacity .3s ease}& a:hover{opacity:.8}.profileImage{border-radius:100%;border:2px solid #00ff41;margin-right:10px;box-shadow:0 0 10px rgba(0,255,65,.5)}}.logo{display:flex;align-items:center;& img{-webkit-margin-end:10px;margin-inline-end:10px;filter:drop-shadow(0 0 8px rgba(255,255,255,.6))}color:white;text-decoration:none;font-size:1.5rem;font-weight:700;letter-spacing:.5px;text-shadow:0 0 20px rgba(255,255,255,.5)}.menu{display:inline-block;position:relative;padding:15px 20px;align-self:stretch}.menu ul{left:calc(-220px * .9);color:#e2e8f0;background-color:#1e293b;box-shadow:0 0 30px rgba(0,255,65,.3);border:1px solid rgba(0,255,65,.3);border-radius:8px;& li{padding:12px 16px;border-bottom:1px solid rgba(0,255,65,.2)}& li:last-child{border-bottom:none}& a{font-weight:700;color:#e2e8f0;transition:color .3s ease}& li:has(a):hover{background-color:rgba(0,255,65,.2)}& a:hover{color:#00ff41}& a:visited{color:#e2e8f0}}.menu:hover ul{display:block}.profile{display:flex;& a,& p{display:flex;align-items:center}}.main__home{min-height:100vh}.main__game,.main__home{background-color:#0f172a}.main__game{min-height:90vh}article{margin:0 auto;background-color:transparent;padding:20px 40px;width:75%}.games{display:grid;margin-top:20px;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));grid-gap:40px;gap:40px;& li{background:rgba(30,41,59,.6);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);max-width:300px;border-radius:12px;overflow:hidden;border:1px solid rgba(0,255,65,.3);transition:all .3s ease;box-shadow:0 4px 20px rgba(0,0,0,.3)}& li:hover{transform:translateY(-8px);box-shadow:0 0 30px rgba(0,255,65,.6),0 8px 40px rgba(0,0,0,.5);border-color:#00ff41}& a{color:#e2e8f0;display:flex;flex-direction:column;flex:2 1 100%}& h2{font-weight:700;font-size:1.4rem;color:white;text-shadow:0 2px 10px rgba(0,0,0,.5);margin:.5rem 0;line-height:1.3}}.image-cover{width:100%;height:100%;object-fit:cover;max-height:300px;min-height:300px;position:relative;& img{width:100%;height:100%;object-fit:cover;position:absolute}}a{text-decoration:none}.game__meta{font-weight:500;justify-content:space-between;margin-bottom:10px;color:#94a3b8;font-size:.9rem}.game__details,.game__meta{display:flex;align-items:center}.game__details{padding:20px;background:linear-gradient(180deg,transparent,rgba(15,23,42,.8));flex-direction:column;text-align:center}.game__rating-display{font-size:3rem;font-weight:900;color:#00ff41;text-shadow:0 0 20px rgba(0,255,65,.8),0 0 40px rgba(0,255,65,.4);margin-bottom:.5rem;line-height:1}.game__rating{padding:5px 0;display:flex;align-items:center;justify-content:center;& ul{display:flex}& svg{width:1.25rem;height:1.25rem;color:#fbbf24;filter:drop-shadow(0 0 4px rgba(251,191,36,.6))}& span{color:#94a3b8;margin-left:8px;font-size:.85rem}}.game__review_summary{max-width:"50vw";height:"75px";padding-top:"10px"}.img__section{width:100%;height:400px;position:relative;>img{width:100%;height:100%;object-fit:cover;position:absolute;max-width:unset}}.details{position:absolute;bottom:0;padding:20px;color:white;& span{color:inherit}}.details__container{--tw-gradient-from:#c60094 var(--tw-gradient-from-position);--tw-gradient-to:rgb(56 85 116/0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to);background-image:linear-gradient(to top right,var(--tw-gradient-stops));position:absolute;right:0;bottom:0;left:0;background:rgb(24 25 26/50%);width:100%;height:100%}.reviews{& .review__item{padding:40px;border-bottom:1px solid rgba(0,255,65,.2);background:rgba(30,41,59,.3);margin-bottom:8px;border-radius:8px;transition:background .3s ease}& .review__item:hover{background:rgba(30,41,59,.5)}& time{font-size:.8rem;color:#94a3b8}& p{color:#e2e8f0;line-height:1.6}}.actions{position:absolute;z-index:1;bottom:-30px;right:0;display:flex;justify-content:flex-end;& img{height:4rem}.review{--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 10px 15px -3px rgb(0 0 0/0.1),0 4px 6px -4px rgb(0 0 0/0.1);cursor:pointer;background:linear-gradient(135deg,#fbbf24,#f59e0b);border-radius:.75rem;box-shadow:0 0 25px rgba(251,191,36,.5);transition:all .3s ease}.review:hover{box-shadow:0 0 35px rgba(251,191,36,.8);transform:translateY(-4px)}.add{--tw-shadow:0 10px 15px -3px rgb(0 0 0/0.1),0 4px 6px -4px rgb(0 0 0/0.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color);box-shadow:0 0 25px rgba(0,240,255,.4);background:linear-gradient(135deg,#00f0ff,#00b8d4);border-radius:9999px;cursor:pointer;height:4rem;transition:all .3s ease}.add:hover{box-shadow:0 0 35px rgba(0,240,255,.7);transform:translateY(-4px)}.add input{display:none}:where(.review,.add){margin:0 30px}}#review{padding:20px;font-size:17px;border:none;border-bottom:2px solid rgba(0,255,65,.5);background-color:rgba(30,41,59,.5);color:#e2e8f0;width:100%;border-radius:8px;transition:border-color .3s ease}#review:focus{outline:none;border-color:#00ff41;box-shadow:0 0 15px rgba(0,255,65,.3)}.star-rating{display:flex;flex-direction:row-reverse;justify-content:flex-end}.radio-input{position:fixed;opacity:0;pointer-events:none}.radio-label{cursor:pointer;font-size:0;color:rgba(0,0,0,.2);transition:color .1s ease-in-out}.radio-label:before{content:"★";display:inline-block;font-size:32px}.radio-input:checked~.radio-label{color:#ffc700;color:gold}.radio-label:hover,.radio-label:hover~.radio-label{color:goldenrod}.radio-input:checked+.radio-label:hover,.radio-input:checked+.radio-label:hover~.radio-label,.radio-input:checked~.radio-label:hover,.radio-input:checked~.radio-label:hover~.radio-label,.radio-label:hover~.radio-input:checked~.radio-label{color:darkgoldenrod}.average-rating{position:relative;-webkit-appearance:none;-moz-appearance:none;appearance:none;color:transparent;width:auto;display:inline-block;vertical-align:baseline;font-size:25px}.average-rating:before{--percent:calc(4.3 / 5 * 100%);content:"★★★★★";position:absolute;top:0;left:0;color:rgba(0,0,0,.2);background:linear-gradient(90deg,gold var(--percent),rgba(0,0,0,.2) var(--percent));background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}.rating-picker{display:flex;flex-direction:row-reverse;justify-content:center}.filter-menu{background:rgba(30,41,59,.8);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:12px;border:1px solid rgba(0,255,65,.3);box-shadow:0 4px 20px rgba(0,0,0,.3);& summary{font-weight:700;cursor:pointer;display:flex;align-items:center;padding:16px;color:white;transition:background .3s ease}& summary:hover{background:rgba(0,255,65,.1)}& form{padding:20px 20px 0}& form,& label{display:flex;flex-direction:column}& label{padding:10px 0;flex-grow:1;color:#94a3b8;font-size:.75rem;line-height:1rem;font-weight:500}& img{height:4rem;max-width:100%;filter:brightness(0) invert(1);opacity:.9}& form div{display:flex;gap:10px}& select{color:#e2e8f0;background-color:#1e293b;font-size:.875rem;line-height:1.25rem;padding:1rem .625rem .5rem;border:0;border-bottom:2px;border-color:rgba(0,255,65,.5);border-style:solid;border-radius:4px;transition:border-color .3s ease}& select:focus{outline:none;border-color:#00ff41}& p:first-child{font-weight:300;font-size:1.25rem;line-height:1.75rem;margin-bottom:2px;color:#e2e8f0}& p:last-child{color:#00ff41;font-weight:600;font-size:.875rem;line-height:1.25rem}}.filter{margin:0 auto}.tags{display:flex;flex-wrap:wrap;gap:10px;margin:30px 0;& span{font-weight:500;line-height:1.25rem;padding:.5rem 1rem;background:linear-gradient(135deg,#003d00,#00ff41);border-radius:9999px;color:white;font-size:.95rem;box-shadow:0 0 15px rgba(0,255,65,.4);transition:all .3s ease}& span:hover{box-shadow:0 0 25px rgba(0,255,65,.6);transform:translateY(-2px)}& button{cursor:pointer;margin-left:8px;padding:2px 10px;color:white;background-color:rgba(255,255,255,.2);outline:none;border:none;font-size:.8rem;border-radius:50%;transition:background-color .3s ease}& button:hover{background-color:rgba(255,255,255,.3)}}