connections/app/static/css/style.css

186 lines
3.1 KiB
CSS

:root {
--lvl-1: #f9df70;
--lvl-2: #a0c35a;
--lvl-3: #b0c4ef;
--lvl-4: #ba81c5;
}
body {
font-family: sans-serif;
display: flex;
flex-direction: column;
align-items: center;
background: #fff;
color: #333;
padding: 20px;
}
h1 {
text-transform: uppercase;
border-bottom: 2px solid #000;
margin-bottom: 20px;
letter-spacing: 2px;
}
.header-links {
display: flex;
flex-wrap: wrap;
gap: 8px;
justify-content: center;
margin-bottom: 14px;
}
.header-links a {
border: 1px solid #000;
border-radius: 999px;
padding: 6px 10px;
text-decoration: none;
color: #000;
font-weight: bold;
font-size: 13px;
}
.header-links a.active {
background: #000;
color: #fff;
}
#grid {
display: grid;
grid-template-columns: repeat(4, 1fr);
gap: 10px;
width: 100%;
max-width: 500px;
margin-bottom: 20px;
}
.card {
aspect-ratio: 1/1;
background: #efefe6;
border-radius: 6px;
display: flex;
align-items: center;
justify-content: center;
font-weight: bold;
font-size: 14px;
cursor: pointer;
text-align: center;
padding: 5px;
user-select: none;
transition: transform 0.1s;
}
.card.selected {
background: #5a594e;
color: white;
}
.solved {
grid-column: span 4;
aspect-ratio: auto;
height: 65px;
display: flex;
flex-direction: column;
border-radius: 6px;
cursor: default;
}
.solved div {
font-size: 13px;
opacity: 0.9;
margin-top: 4px;
font-weight: normal;
}
.controls {
display: flex;
gap: 12px;
}
button {
padding: 12px 24px;
border-radius: 25px;
border: 1px solid #000;
background: white;
cursor: pointer;
font-weight: bold;
font-size: 14px;
}
button:disabled {
opacity: 0.3;
cursor: not-allowed;
}
#message {
margin-top: 20px;
font-weight: bold;
height: 24px;
color: #d33;
}
#message.ok {
color: #2b7d32;
}
.subtitle {
margin-top: -8px;
margin-bottom: 18px;
font-weight: bold;
letter-spacing: 1px;
}
.builder {
width: 100%;
max-width: 700px;
}
.meta-row {
display: grid;
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: 12px;
margin-bottom: 14px;
}
.meta-row label {
display: flex;
flex-direction: column;
font-size: 13px;
gap: 6px;
font-weight: bold;
}
.meta-row input {
border: 1px solid #b8b8ae;
border-radius: 6px;
padding: 10px;
font-size: 14px;
}
.builder-grid {
max-width: 700px;
}
.builder-row {
height: auto;
padding: 10px;
align-items: stretch;
}
.builder-row > input {
border: 1px solid #8f8f8f;
border-radius: 6px;
padding: 10px;
font-size: 14px;
font-weight: bold;
}
.builder-words {
margin-top: 8px;
display: grid;
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: 8px;
}
.builder-words input {
border: 1px solid #8f8f8f;
border-radius: 6px;
padding: 10px;
font-size: 14px;
}
.ghost-link {
padding: 12px 24px;
border-radius: 25px;
border: 1px solid #000;
background: white;
color: #000;
cursor: pointer;
font-weight: bold;
font-size: 14px;
text-decoration: none;
line-height: 22px;
}
@media (max-width: 640px) {
.meta-row {
grid-template-columns: 1fr;
}
.builder-words {
grid-template-columns: 1fr;
}
}