/* HOBBYHIMMEL KeyPatch - Modern CSS */ :root { --color-primary: #76B043; --color-dark: #3F4242; --color-gray: #6D6E71; --color-light: #F5F5F5; --color-white: #FFFFFF; --border-radius: 12px; --shadow: 0 4px 12px rgba(0, 0, 0, 0.1); --shadow-hover: 0 6px 16px rgba(0, 0, 0, 0.15); } * { box-sizing: border-box; } body { font-family: 'Open Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif; background-color: var(--color-light); color: var(--color-dark); display: flex; flex-flow: column; align-items: center; margin: 0; padding: 20px; line-height: 1.6; } h1, h2 { color: var(--color-dark); font-weight: 600; margin: 20px 0 15px 0; text-shadow: none; } h1 { font-size: 2em; } h2 { font-size: 1.5em; } li { background-color: var(--color-white); list-style-type: none; margin-bottom: 12px; padding: 12px 16px; box-shadow: var(--shadow); border-radius: var(--border-radius); border-left: 4px solid var(--color-primary); transition: all 0.3s ease; } li:hover { box-shadow: var(--shadow-hover); transform: translateY(-2px); } li a:first-child, li b { background-color: var(--color-primary); font-weight: 600; color: var(--color-white); text-decoration: none; padding: 6px 12px; border-radius: 6px; cursor: pointer; display: inline-block; transition: all 0.3s ease; text-shadow: none; margin-right: 8px; } li a:first-child:hover, li b:hover { background-color: var(--color-dark); transform: scale(1.05); } li strong { color: var(--color-primary); font-weight: 600; } input { height: 40px; font-size: 14px; padding: 10px 12px; border: 2px solid var(--color-gray); border-radius: var(--border-radius); font-family: 'Open Sans', sans-serif; transition: border-color 0.3s ease; } input:focus { outline: none; border-color: var(--color-primary); box-shadow: 0 0 0 3px rgba(118, 176, 67, 0.1); } label + a { text-decoration: none; } h1 + main { display: flex; width: 100%; gap: 20px; } aside { display: flex; flex-direction: column; padding: 0; background-color: var(--color-white); border-radius: var(--border-radius); padding: 20px; box-shadow: var(--shadow); min-width: 200px; } button { height: 40px; font-size: 16px; margin-top: 1em; box-shadow: var(--shadow); border: none; border-radius: var(--border-radius); font-weight: 600; cursor: pointer; transition: all 0.3s ease; font-family: 'Open Sans', sans-serif; padding: 0 20px; } button:hover { box-shadow: var(--shadow-hover); transform: translateY(-2px); } button:active { transform: translateY(0); } div button { background-color: var(--color-primary); color: var(--color-white); } div button:hover { background-color: #5FA03A; } nav { display: flex; align-items: baseline; justify-content: space-between; background-color: var(--color-white); padding: 15px 20px; border-radius: var(--border-radius); box-shadow: var(--shadow); width: 100%; margin-bottom: 20px; } #left { align-items: flex-end; text-shadow: none; color: var(--color-dark); } #cr { font-weight: 600; cursor: pointer; font-size: 1.5em; color: var(--color-primary); } #up { width: auto; } .note { background-color: #E8F5E9; padding: 15px; margin-top: 1em; text-align: center; max-width: 400px; border-radius: var(--border-radius); border-left: 4px solid var(--color-primary); box-shadow: var(--shadow); color: var(--color-dark); } .no { display: none; } form [title] { background-color: var(--color-primary); color: var(--color-white); font-size: 1em; padding: 10px 12px; border: none; border-radius: var(--border-radius); font-weight: 600; cursor: pointer; transition: all 0.3s ease; } form [title]:hover { background-color: #5FA03A; } form:nth-of-type(2) { margin-bottom: 1em; } [value*=Format] { margin-top: 1em; box-shadow: var(--shadow); border-radius: var(--border-radius); background-color: var(--color-white); border: 2px solid var(--color-primary); padding: 12px; } [name="group"] { display: none; } [name="group"] + label { font-size: 1.1em; margin-right: 10px; font-weight: 600; color: var(--color-dark); cursor: pointer; user-select: none; } [name="group"] + label::before { content: "\002610"; margin-right: 8px; color: var(--color-primary); } [name="group"]:checked + label::before { content: '\002611'; color: var(--color-primary); } @media only screen and (max-width: 500px) { body { padding: 10px; } h1 + main { flex-direction: column; } .ip { position: relative; right: 0; } aside { max-width: 100%; width: 100%; } nav { flex-direction: column; align-items: flex-start; gap: 10px; } button { width: 100%; } .note { max-width: 100%; } }