/* * Design sizes: * Mobile: 375x667 (327x360) * Desktop: 1440x800 (412x416) */ *, ::before, ::after { margin: 0; padding: 0; box-sizing: border-box; } :root { /* Colors */ --col-orange: hsl(25, 97%, 53%); --col-white: hsl(0, 0%, 100%); --col-light-grey: hsl(217, 12%, 63%); --col-medium-grey: hsl(216, 12%, 54%); --col-very-dark-blue: hsl(216, 12%, 8%); --col-dark-blue: hsl(213, 19%, 18%); --col-background-component: radial-gradient( 98.96% 98.96% at 50% 0%, #232a34 0%, #181e27 100% ); /* Typography */ --fs-header: 1.5rem; --lh-header: 125%; --fw-header: 700; --fs-body: 0.875rem; --lh-body: 157%; --fw-body: 400; --fs-rating: 0.875rem; --lh-rating: 171%; --ls-rating: 0.175px; --fs-button: 0.875rem; --lh-button: 128.57142857%; --ls-button: 1.86667px; --border-radius: 0.9375rem; } body { min-height: 100vh; font-family: "Overpass", sans-serif; display: grid; place-content: center; background-color: var(--col-very-dark-blue); } .rating-component { max-width: 20.4375rem; background: var(--col-background-component); border-radius: var(--border-radius); } .rating-component-front { padding: 1.5rem 1.5rem 2rem 1.5rem; } .star-icon { display: block; background-color: var(--col-dark-blue); border-radius: 50%; text-align: center; width: 2.5rem; padding: 0.8125rem; } .header { font-size: var(--fs-header); line-height: var(--lh-header); color: var(--col-white); } .body { font-size: var(--fs-body); line-height: var(--lh-body); color: var(--col-light-grey); } .rating-component__header { margin-top: 1.375rem; /* 1rem;*/ } .rating-component__body { margin-top: 1.0625rem; margin-left: 0.125rem; } #ratingForm { margin-top: 1.5rem; } #ratingForm fieldset { border: none; } .ratingForm__label { display: inline-block; cursor: pointer; border-radius: 50%; background-color: var(--col-dark-blue); font-size: var(--fs-rating); line-height: var(--lh-rating); letter-spacing: var(--ls-rating); font-weight: 700; color: var(--col-medium-grey); padding: 0.625rem; text-align: center; width: 2.625rem; height: 2.625rem; margin-right: 0.8125rem; } #ratingForm input[type="radio"] { opacity: 0; position: fixed; width: 0; } .ratingForm__label:last-of-type { margin-right: 0px; } .ratingForm__label:hover { background-color: var(--col-orange); color: var(--col-white); } .radio_container input[type="radio"]:focus + label { outline: 2px dashed var(--col-white); color: var(--col-white); background-color: var(--col-medium-grey); } .radio_container input[type="radio"]:checked + label { color: var(--col-white); background-color: var(--col-medium-grey); } .btn { border-radius: 1.4063rem; padding: 0.8125rem 6.875rem 0.8125rem 6.6875rem; text-align: center; font-family: "Overpass", sans-serif; font-size: var(--fs-button); line-height: var(--lh-button); letter-spacing: var(--ls-button); font-weight: 700; text-transform: uppercase; border: none; } .btn-submit { margin-top: 1.5rem; margin-inline: auto; color: var(--col-white); background-color: var(--col-orange); } .btn-submit:where(:focus, :hover) { color: var(--col-orange); background-color: var(--col-white); } .hidden { display: none; } .visible { display: block; } /* for rating-component-back */ .rating-component-back { padding: 1.5rem 1.5rem 2.3125rem 1.5rem; text-align: center; } .thank-you-img { margin-top: 0.625rem; width: 50%; } .rating-component__rating-result { margin-top: 1.5rem; margin-inline: 3.4375rem; font-size: var(--fs-body); line-height: var(--lh-body); color: var(--col-orange); border-radius: 1.4063rem; background-color: var(--col-dark-blue); padding: 0.3125rem 0.75rem; } .rating-component__header-submitted { margin-top: 1.5rem; } .rating-component__body-submitted { margin-top: 0.875rem; } .visually-hidden { border: 0; clip: rect(0 0 0 0); clip-path: inset(50%); height: auto; margin: 0; overflow: hidden; padding: 0; position: absolute; width: 1px; white-space: nowrap; } @media screen and (min-width: 62.5rem) { :root { /* Typography */ --fs-header: 1.75rem; --fs-body: 0.9375rem; --lh-body: 160%; --fs-rating: 1rem; --lh-rating: 150%; --ls-rating: 0.2px; --fs-button: 0.9375rem; --lh-button: 1.2666666667; --ls-button: 2px; --border-radius: 1.875rem; } .rating-component { max-width: 25.75rem; } .rating-component-front { padding: 2rem 2.4375rem 2rem 2rem; } .star-icon { width: 3rem; padding: 1rem; } .rating-component__header { margin-top: 2.5rem; } .rating-component__body { margin-top: 0.625rem; } .ratingForm__label { width: 3.1875rem; height: 3.1875rem; padding: 0.9375rem; margin-right: 1.0625rem; } .ratingForm__label:nth-child(odd) { margin-right: 0.9375rem; } .btn { padding: 0.875rem 8.625rem 0.75rem 8.5625rem; } .btn-submit { margin-top: 2rem; margin-inline: unset; } .rating-component-back { padding: 2.8125rem 2.5rem 2.8125rem 2rem; } .thank-you-img { width: 48%; } .rating-component__rating-result { margin-top: 1.375rem; margin-inline: 3.75rem; padding: 0.25rem 1.1875rem 0.25rem 1.25rem; } .rating-component__header-submitted { margin-top: 2rem; } .rating-component__body-submitted { margin-top: 0.75rem; } }