/* ============================================
   CRAZYONOPOLY - SVG Icon Styling
   Styles for photorealistic SVG replacements
   ============================================ */

/* Inline icon containers */
.icon-inline {
  display: inline-block;
  width: 1em;
  height: 1em;
  vertical-align: middle;
  margin-right: 0.3em;
}

.icon-inline-large {
  display: inline-block;
  width: 1.5em;
  height: 1.5em;
  vertical-align: middle;
  margin-right: 0.3em;
}

.icon-close {
  display: inline-block;
  width: 0.8em;
  height: 0.8em;
}

.robot-icon {
  display: inline-block;
  width: 1em;
  height: 1em;
  vertical-align: middle;
  margin-right: 0.2em;
}

.suit-icon {
  display: inline-block;
  width: 0.9em;
  height: 0.9em;
  vertical-align: middle;
}

.house-icon, .hotel-icon {
  display: inline-block;
  width: 1em;
  height: 1em;
  vertical-align: middle;
}

/* Button icon containers */
.btn-icon {
  width: 24px;
  height: 24px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.btn-icon svg {
  width: 100%;
  height: 100%;
}

/* Mini dice in menu */
.mini-die {
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.mini-die svg {
  width: 100%;
  height: 100%;
  filter: drop-shadow(2px 2px 4px rgba(0,0,0,0.3));
}

/* Player token display */
.player-card-token svg {
  width: 100%;
  height: 100%;
}

/* SVG animations */
@keyframes iconPulse {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.1); }
}

.icon-animate {
  animation: iconPulse 0.5s ease-in-out;
}

/* Ensure SVGs scale properly */
svg {
  max-width: 100%;
  max-height: 100%;
}
