*, *::after, *::before { box-sizing: border-box; margin: 0; padding: 0; } body { background: #fff; color: #000; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Open Sans", "Helvetica Neue", sans-serif; font-size: 16px; line-height: 1.618; display: flex; flex-flow: column nowrap; min-height: 100vh; } .main { flex: 1; margin: 3rem; position: relative; } .header, .main, .footer { width: min(calc(100vw - 2rem), 80ch); margin-left: auto; margin-right: auto; } .header, .footer { padding: 1rem 0; } .branding { color: hsl(219, 64%, 35%); text-align: center; } .copyright { font-size: 0.9rem; text-align: center; } .color-cycle { display: flex; flex-flow: row wrap; gap: 2rem; align-items: center; } .color-cycle__preview, .color-cycle__settings { flex: 1 1 min(calc(100vw - 2rem), calc(80ch / 2 - 1rem)); } .preview { border: 1px solid #ccc; height: 20rem; margin-bottom: 2rem; } .form__fieldset { display: flex; flex-flow: row wrap; gap: 1rem; margin: 1rem 0; padding: 0.8rem 1rem 1.2rem; } .form__legend { color: hsl(219, 64%, 35%); font-size: 0.9rem; font-weight: 600; text-transform: uppercase; padding: 0 0.8rem; } .form__label { display: block; cursor: pointer; } .form__input { padding: 0.2rem 0.5rem; } .btn, .form__input { font-family: inherit; font-size: inherit; line-height: inherit; } .btn { background: #fff; border: 2px solid hsl(219, 64%, 35%); border-radius: 5px; color: hsl(219, 64%, 35%); font-weight: 600; cursor: pointer; display: block; margin: auto; padding: 0.5rem 1rem; } .btn:hover, .btn:focus { background: hsl(219, 64%, 35%); color: #fff; } .btn:active { background: hsl(219, 64%, 25%); color: #fff; } .notification { background: #fff; border: 2px solid hsl(0, 64%, 35%); color: hsl(0, 64%, 35%); font-weight: 600; padding: 1rem; position: absolute; right: 1rem; bottom: 1rem; }