/*
Theme Name: Virbuz Design System
Description: Starter theme moderne basé sur le design system Virbuz avec support complet du mode sombre, animations et composants réutilisables.
Version: 1.0.0
Author: Virbuz Team
Text Domain: virbuz
Domain Path: /languages
Requires at least: 6.0
Tested up to: 6.4
Requires PHP: 8.0
License: GPL v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Tags: dark, modern, business, marketing, responsive, animation
*/

/* Import du design system principal */
@import url('design-system.css');

/* Styles WordPress spécifiques */
body.wordpress {
  background: hsl(var(--background));
  color: hsl(var(--foreground));
  margin: 0;
  padding: 0;
}

.wp-block-group {
  margin-block-start: 0;
  margin-block-end: 0;
}

/* WordPress admin bar compatibility */
body.admin-bar .navbar {
  top: 32px;
}

@media screen and (max-width: 782px) {
  body.admin-bar .navbar {
    top: 46px;
  }
}

/* WordPress alignment classes */
.alignleft {
  float: left;
  margin-right: 1.5rem;
}

.alignright {
  float: right;
  margin-left: 1.5rem;
}

.aligncenter {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.alignwide {
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  max-width: 100vw;
  width: auto;
}

.alignfull {
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  max-width: 100vw;
  width: auto;
}

/* WordPress gallery styles */
.wp-block-gallery {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: 1rem;
}

/* Comments */
.comment-list {
  list-style: none;
  padding: 0;
}

.comment-body {
  background: hsl(var(--card));
  border: 1px solid hsl(var(--border));
  border-radius: var(--radius);
  padding: 1.5rem;
  margin-bottom: 1rem;
}

.comment-author {
  font-weight: 600;
  color: hsl(var(--primary));
}

.comment-meta {
  font-size: 0.875rem;
  color: hsl(var(--muted-foreground));
  margin-bottom: 1rem;
}

/* Forms */
input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="number"],
input[type="tel"],
input[type="range"],
input[type="date"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="datetime"],
input[type="datetime-local"],
input[type="color"],
textarea,
select {
  width: 100%;
  padding: 0.75rem 1rem;
  background: hsl(var(--input));
  border: 1px solid hsl(var(--border));
  border-radius: calc(var(--radius) - 2px);
  color: hsl(var(--foreground));
  font-size: 0.875rem;
  transition: var(--transition-smooth);
}

input:focus,
textarea:focus,
select:focus {
  outline: none;
  border-color: hsl(var(--primary));
  box-shadow: 0 0 0 2px hsl(var(--primary) / 0.2);
}

/* WordPress blocks compatibility */
.wp-block-button .wp-block-button__link {
  background: var(--gradient-primary);
  border: none;
  border-radius: calc(var(--radius) - 2px);
  color: white;
  padding: 0.75rem 2rem;
  text-decoration: none;
  font-weight: 500;
  display: inline-block;
  transition: var(--transition-smooth);
}

.wp-block-button .wp-block-button__link:hover {
  opacity: 0.9;
  transform: translateY(-1px);
}

.wp-block-quote {
  border-left: 4px solid hsl(var(--primary));
  padding-left: 1.5rem;
  font-style: italic;
  font-size: 1.125rem;
}

.wp-block-pullquote {
  background: hsl(var(--card));
  border: 1px solid hsl(var(--border));
  border-radius: var(--radius);
  padding: 2rem;
  text-align: center;
}

/* Screen reader text */
.screen-reader-text {
  border: 0;
  clip: rect(1px, 1px, 1px, 1px);
  clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
  word-wrap: normal !important;
}

.screen-reader-text:focus {
  background-color: hsl(var(--background));
  border-radius: 3px;
  box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
  clip: auto !important;
  clip-path: none;
  color: hsl(var(--foreground));
  display: block;
  font-size: 0.875rem;
  font-weight: 700;
  height: auto;
  left: 5px;
  line-height: normal;
  padding: 15px 23px 14px;
  text-decoration: none;
  top: 5px;
  width: auto;
  z-index: 100000;
}

/* Print styles */
@media print {
  .navbar,
  .footer,
  .wp-block-button,
  .comment-reply-link {
    display: none;
  }
  
  body {
    background: white !important;
    color: black !important;
  }
}