:root { --color-error: #cc0000; --color-primary: #3dd9eb; --color-secondary: #34495e; --color-success: #5cb85c; --color-tertiary: #6b7280; --color-white: #ffffff; } a { color: inherit; display: inline-block; font-weight: bold; outline: none; text-decoration: none; } a:focus, a:hover { text-decoration: underline; } body { color: var(--color-tertiary); display: flex; flex-direction: column; font-family: Inter, Arial, Helvetica, sans-serif; height: 24rem; width: 20rem; } button { outline: none; } footer { background-color: var(--color-secondary); font-size: 0.75rem; height: 0.25rem; margin-top: auto; text-align: center; } header { align-items: center; background-color: var(--color-secondary); color: var(--color-white); display: flex; font-size: 1rem; height: 3rem; justify-content: space-between; padding: 0 1rem; } hr { margin-bottom: 1rem; } input:checked + .slider { background-color: var(--color-secondary); } input:focus + .slider { box-shadow: 0 0 0.0625rem var(--color-secondary); } input:checked + .slider:before { transform: translateX(1.25rem); } main { display: flex; flex-direction: column; gap: 1.25rem; padding: 1rem; } span { display: inline-block; } strong { font-weight: bold; } .header-actions { align-items: center; display: flex; } .header-actions > button { border-radius: 0.125rem; color: var(--color-white); padding: 0.25rem; transition: 0.4s; } .header-actions > button:focus, .header-actions > button:hover { background-color: var(--color-white); color: var(--color-secondary); } .header-title { font-size: 1rem; } .contribute, .help { align-items: center; display: flex; font-size: 0.875rem; justify-content: space-between; } .contribute > a, .help > a { color: var(--color-secondary); padding: 0.25rem; transition: 0.4s; } .contribute > a:focus, .contribute > a:hover, .help > a:focus, .help > a:hover { background-color: var(--color-secondary); border-radius: 0.125rem; color: var(--color-white); outline: none; } .rating { align-items: center; display: flex; font-size: 0.875rem; justify-content: space-between; } .rating-actions { align-items: center; display: flex; } .rating-actions > button { margin-left: 1rem; } .switch { display: inline-block; flex-shrink: 0; height: 1.25rem; margin-left: 0.75rem; position: relative; width: 2.5rem; } .switch input { height: 0; opacity: 0; width: 0; } .switch-label { cursor: pointer; display: flex; font-size: 0.875rem; justify-content: space-between; } .switch-label > span { line-height: 1.25rem; } .slider { background-color: var(--color-tertiary); bottom: 0; cursor: pointer; left: 0; position: absolute; right: 0; top: 0; transition: 0.4s; } .slider:before { background-color: var(--color-white); bottom: 0.25rem; content: ''; height: 0.75rem; left: 0.25rem; position: absolute; transition: 0.4s; width: 0.75rem; } #like, #unlike { color: var(--color-secondary); cursor: pointer; padding: 0.25rem; transition: 0.4s; } #like:focus, #like:hover { color: var(--color-success); } #negative, #positive { background-color: var(--color-secondary); border-radius: 0.125rem; color: var(--color-white); font-size: 0.75rem; line-height: 1rem; margin-bottom: 0; margin-top: 1rem; padding: 1rem; } #unlike:focus, #unlike:hover { color: var(--color-error); }