holdspot-online / style.css
alienisoneofus's picture
You are a master programmer in HTML, CSS and JS and very good at logic implementation. You can find solution in very complicated situation, implement flawless methods or technique and create very complex, sturdy and meaningful piece of code. You also create very beautiful designs, top eye candy class for many CSS knowledgeable experts, with entire components occupying absolute minimum space possible while remaining usable.
3c189ce verified
/* Base Styles */
* {
margin: 0;
padding: 0;
box-sizing: border-box;
}
body {
font-family: 'Open Sans', sans-serif;
font-size: 0.75rem; /* base size */
line-height: 1.5;
}
/* Map Styles */
#map {
z-index: 1;
}
.leaflet-container {
background: #f8f9fa;
}
.dark .leaflet-container {
background: #1f2937;
}
/* Marker Styles */
.marker-icon {
background: white;
border-radius: 50%;
width: 48px;
height: 48px;
display: flex;
align-items: center;
justify-content: center;
box-shadow: 0 2px 6px rgba(0,0,0,0.2);
border: 2px solid #fff;
}
.marker-icon i {
font-size: 24px;
}
/* Modal Styles */
.modal-active {
overflow: hidden;
}
/* Tab Styles */
.tab-button.active {
color: #3b82f6;
border-bottom: 2px solid #3b82f6;
}
.dark .tab-button.active {
color: #60a5fa;
border-bottom: 2px solid #60a5fa;
}
.analytics-tab-button.active,
.shop-tab-button.active {
color: #3b82f6;
border-bottom: 2px solid #3b82f6;
}
.dark .analytics-tab-button.active,
.dark .shop-tab-button.active {
color: #60a5fa;
border-bottom: 2px solid #60a5fa;
}
.analytics-chart-container {
height: 400px;
}
/* Abilities Grid */
.abilities-grid {
display: grid;
grid-template-columns: repeat(10, 1fr);
gap: 1rem;
position: relative;
}
.ability-item {
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
padding: 0.5rem;
border-radius: 0.5rem;
cursor: pointer;
transition: all 0.2s;
position: relative;
}
.ability-item.inactive {
opacity: 0.5;
}
.ability-item.active {
background-color: rgba(59, 130, 246, 0.1);
box-shadow: 0 0 0 2px #3b82f6;
}
.dark .ability-item.active {
background-color: rgba(96, 165, 250, 0.1);
box-shadow: 0 0 0 2px #60a5fa;
}
.ability-icon {
font-size: 1.5rem;
margin-bottom: 0.25rem;
}
/* Shop Items */
.shop-item {
display: flex;
justify-content: space-between;
align-items: center;
padding: 1rem;
border: 1px solid #e5e7eb;
border-radius: 0.5rem;
margin-bottom: 0.5rem;
}
.dark .shop-item {
border-color: #374151;
}
.shop-item-details h3 {
font-weight: 600;
margin-bottom: 0.25rem;
}
.shop-item-meta {
font-size: 0.65rem;
color: #6b7280;
}
.dark .shop-item-meta {
color: #9ca3af;
}
.shop-item-price {
display: flex;
flex-direction: column;
align-items: flex-end;
}
/* Notification Styles */
.notification {
padding: 0.75rem 1rem;
border-radius: 0.5rem;
box-shadow: 0 4px 6px rgba(0,0,0,0.1);
max-width: 300px;
animation: slideIn 0.3s ease-out;
word-break: break-word;
}
@keyframes slideIn {
from {
transform: translateX(100%);
opacity: 0;
}
to {
transform: translateX(0);
opacity: 1;
}
}
.notification.success {
background-color: #dcfce7;
color: #166534;
border: 1px solid #bbf7d0;
}
.dark .notification.success {
background-color: #065f46;
color: #dcfce7;
border: 1px solid #047857;
}
.notification.error {
background-color: #fee2e2;
color: #991b1b;
border: 1px solid #fecaca;
}
.dark .notification.error {
background-color: #7f1d1d;
color: #fee2e2;
border: 1px solid #991b1b;
}
.notification.info {
background-color: #dbeafe;
color: #1e40af;
border: 1px solid #bfdbfe;
}
.dark .notification.info {
background-color: #1e3a8a;
color: #dbeafe;
border: 1px solid #312e81;
}
/* Responsive Adjustments */
@media (max-width: 768px) {
.abilities-grid {
grid-template-columns: repeat(5, 1fr);
}
.shop-item {
flex-direction: column;
align-items: flex-start;
}
.shop-item-price {
align-self: flex-end;
margin-top: 0.5rem;
}
#battle-modal .p-6,
#marker-modal .p-6 {
padding: 1rem;
}
}
@media (max-width: 480px) {
.abilities-grid {
grid-template-columns: repeat(3, 1fr);
}
header .flex.space-x-4 > div {
padding: 0.25rem 0.5rem;
}
header .flex.space-x-4 span {
font-size: 0.65rem;
}
}