@charset "UTF-8";

.qrcdr-wrapper .progress-bar {
  display: flex;
  flex-direction: column;
  justify-content: center;
  overflow: hidden;
  text-align: center;
  white-space: nowrap;
}

.qrcdr-mp3-cover-uploader,
.qrcdr-mp3-cover,
.qrcdr-mp3-cover-uploader .qrcdr-uploader{
    height: 100%;
}

.qrcdr-wrapper .qrcdr-mp3-cover img {
    object-fit: cover;
    height: 100%;
}

.qrcdr-mp3-cover-uploader{
    max-width: 400px;
    margin: 0 auto;
    height: 100%;
    transition: opacity .2s;
}

#qrcdr_loginform{
    max-width: 600px;
}

.modal-body.is-blurred,
.qrcdr-tab-container.is-blurred,
.qrcdr-dashboard-content.is-blurred{
    opacity: 0.3;
    filter: blur(3px);
     pointer-events: none;
    -webkit-filter: blur(3px);
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.qrcdr-lock-screen{
    z-index: 12;
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    visibility: hidden;
}

.qrcdr-lock-screen.is-visible {
  opacity: 1;
  visibility: visible;
}

.qrcdr-iphone-mockup-wrap{
    box-shadow: 0 0 0 3px #333, 0 0 0 6px #666;
    background-color: #000;
    border: 6px solid #000;
    width: 100%;
    aspect-ratio: 3/6 auto;
    border-radius: 40px;
    position: relative;
    max-width: 400px;
    margin: 0 auto;
}

/* Stile per il mockup dell'iPhone */

.qrcdr-iphone-mockup {
    width: 100%;
    height: 100%;
    border-radius: 40px;
    position: relative;
    overflow: hidden;
    overflow-y: auto;
    /*overflow: hidden;*/
}

.qrcdr-iphone-mockup-wrap::before,
.qrcdr-iphone-mockup-wrap::after{
    content: '';
    position: absolute;
    z-index: 10;
}

/* Pulsante di accensione laterale */

.qrcdr-iphone-mockup-wrap::before {
    width: 3px;
    height: 40px;
    background-color: #333;
    top: 100px;
    right: -14px;
    border-radius: 0 2px 2px 0;
}

/* Pulsanti volume */

.qrcdr-iphone-mockup-wrap::after {
    width: 3px;
    height: 60px;
    background-color: #333;
    top: 160px;
    right: -14px;
    border-radius: 0 2px 2px 0;
}

/* Notch (tacca) superiore */

.qrcdr-notch {
    width: 40%;
    height: 30px;
    background-color: #000;
    position: absolute;
    top: -6px;
    left: 50%;
    transform: translateX(-50%);
    border-bottom-left-radius: 15px;
    border-bottom-right-radius: 15px;
    z-index: 10;
    display: flex;
    justify-content: center;
    align-items: center;
}

.qrcdr-camera-speaker {
    width: 100%;
    height: 10px;
    background-color: #222;
    border-radius: 5px;
    margin: 0 10px;
}

.qrcdr-camera-dot {
    width: 8px;
    height: 8px;
    background-color: #333;
    border-radius: 50%;
    margin-left: 10px;
}

.qrcdr-screen {
    flex-grow: 1;
    /*background: linear-gradient(0deg, #1C2024 50%, #1F2021 100%) #1F2021;*/
        background: linear-gradient(0deg, #ffffff 50%, #F3F3F3 100%) #ffffff;

    margin: 0;
    border-radius: 30px;
    overflow: hidden;
    overflow-y: auto;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
    min-height: 100%;
}

.qrcdr-album-cover {
    width: 220px; 
    height: 220px;
    background-color: #ccc; 
    margin: auto;
    margin-top: 50px;
    margin-bottom: 2rem;
    border-radius: 8px;
    box-shadow: 0 5px 15px rgba(0,0,0,0.1);
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='rgba(100,100,100,0.2)' class='bi bi-cloud-arrow-up-fill' viewBox='0 0 16 16'%3E%3Cpath d='M8 2a5.53 5.53 0 0 0-3.594 1.342c-.766.66-1.321 1.52-1.464 2.383C1.266 6.095 0 7.555 0 9.318 0 11.366 1.708 13 3.781 13h8.906C14.502 13 16 11.57 16 9.773c0-1.636-1.242-2.969-2.834-3.194C12.923 3.999 10.69 2 8 2m2.354 5.146a.5.5 0 0 1-.708.708L8.5 6.707V10.5a.5.5 0 0 1-1 0V6.707L6.354 7.854a.5.5 0 1 1-.708-.708l2-2a.5.5 0 0 1 .708 0z'/%3E%3C/svg%3E");    background-repeat: no-repeat;
    background-position: center;
    background-size: 50%;
}

.qrcdr-album-cover:hover > .qrcdr-mp3-cover-uploader{
    opacity: 0.1;
}

.qrcdr-wrapper .qrcdr-audio{
    margin-bottom: 0;
    width: 100%;
    padding: 2rem;
    text-align: center;
}

.modal-backdrop {
  --qrcdr-backdrop-zindex: 1050;
  --qrcdr-backdrop-bg: #000;
  --qrcdr-backdrop-opacity: 0.5;
  position: fixed;
  top: 0;
  left: 0;
  z-index: var(--qrcdr-backdrop-zindex);
  width: 100vw;
  height: 100vh;
  background-color: var(--qrcdr-backdrop-bg);
}

.modal-backdrop.fade {
  opacity: 0;
}

.modal-backdrop.show {
  opacity: var(--qrcdr-backdrop-opacity);
}

.qrcdr-wrapper {
	--plyr-audio-controls-background: transparent;
	--plyr-color-main: #000;
	--plyr-audio-control-color: #fff;
}

.qrcdr-wrapper .plyr__control{
	border-radius: 50%;
}

/*:root {
    --button-protrusion-minimal: 4px;
}


.qrcdr-wrapper div.essential_audio.minimal > div:nth-child(1) div:after {
    content: "";
}

.qrcdr-wrapper div.essential_audio.minimal > div:nth-child(1) div{
    height: 10px;
    width: 10px;
    border-radius: 50%;
    margin: 0;
    background-color: var(--qrcdr-primary);
    pointer-events: none;
}

.qrcdr-wrapper div.essential_audio.minimal > div:nth-child(1) div.play {
    background-color: var(--qrcdr-primary) !important;
}

.qrcdr-wrapper div.essential_audio.minimal > div:nth-child(1) {
    left: calc(var(--button-protrusion-minimal) * -1);
    width: calc(100% + (2 * var(--button-protrusion-minimal)));
}


.qrcdr-wrapper .essential_audio_play {
    width: 60px;
    height: 60px;
    margin-top: 1rem;
    content: url("data:image/svg+xml; utf8, <svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'><polygon fill='%23FFF' points='10,6.9 10,23.1 24,15' /></svg>");
}

.qrcdr-wrapper .essential_audio_play.playing {
    content: url("data:image/svg+xml; utf8, <svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'><rect fill='%23FFF' x='17' y='8' width='3' height='14' /><rect fill='%23FFF' x='10' y='8' width='3' height='14' /></svg>");
}
*/

.qrcdr-wrapper .qrcdr_mp3_title{
    text-align: center;
    background-color: transparent;
    border: none;
    color: inherit;
    font-size: 1.4rem;
    font-weight: bold;
    box-shadow: none;
    width: 100%;
    resize: none;
    padding: 0 1rem;
}

.qrcdr-pdf-iframe{
    width: 100%;
    flex-grow: 1;
    height: 100%;
    border: none;
}

/* Contenitore per il mockup del browser */

.qrcdr-browser-mockup {
    width: 100%;
    height: 1000%;
    max-width: 1000px;
    max-height: 700px;
    border-radius: 8px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
    background-color: #fff;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    margin: 20px;
}

.qrcdr-address-bar {
    background-color: #e9ecef; /* bg-body-tertiary */
    border-bottom: 1px solid #dee2e6; /* border-bottom border-secondary-subtle */
}

.qrcdr-icon {
    fill: #6c757d; /* text-secondary */
    width: 1rem;
    height: 1rem;
}

.qrcdr-url-input {
    text-align: center; /* text-center */
    font-size: 0.9rem; /* fs-6 */
}

/* Area del contenuto del browser */

.qrcdr-browser-content {
    flex-grow: 1; /* flex-grow-1 */
    background-color: #ffffff; /* bg-white */
}

.qrcdr-dynamic-title{
    border: none;
    border-bottom: 4px solid var(--qrcdr-primary);
    font-weight: bold;
}

.qrcdr-wrapper .modal-content{
    pointer-events: auto;
    background-color: #fff;
}

.qrcdr-label{
    position: absolute;
    padding: 4px 12px;
    font-weight: bold;
    background-color: rgba(100, 100, 100, 0.1);
    top: 0;
    right: 0;
    border-radius: 4px;
}

.qrcdr-notice{
    padding: 0.5rem 1.5rem; 
    margin-bottom: 1rem;
    border-left: 4px solid rgba(125,125,125,0.3);
    box-sizing: border-box;
    font-size: 1.3rem;
}

.qrcdr-notice p{
    margin: 0;
}

.qrcdr-notice-success{
    border-color: rgba(0,200,50,0.5);
}

.qrcdr-notice-error{
    border-color: rgba(200,0,0,0.5);
}

.qrcdr-notice-danger{
    border-color: rgba(255,176,10,0.5);

}

/* ===================================================================
   Stili per Indicatori di Ordinamento Tabella
   =================================================================== */

/* Aggiunge il cursore a puntatore e spazio per la freccia su tutte le colonne sortable */

.qrcdr-sortable-table .sortable {
    cursor: pointer;
    position: relative;
    padding-left: 20px !important; /* Usa !important se lo stile di Bootstrap sovrascrive il padding */
    white-space: nowrap;
}

/* Freccia neutra (su e giù) di default, leggermente trasparente */

.qrcdr-sortable-table .sortable::after {
    content: '\2195'; /* Codice Unicode per la freccia su e giù */
    position: absolute;
    left: 8px;
    top: 50%;
    transform: translateY(-50%);
    opacity: 0.3;
    font-weight: bold;
}

/* Freccia SU quando la classe .sort-asc è presente */

.qrcdr-sortable-table .sort-asc::after {
    content: '\2191'; /* Codice Unicode per la freccia in su */
    opacity: 1;
}

/* Freccia GIÙ quando la classe .sort-desc è presente */

.qrcdr-sortable-table .sort-desc::after {
    content: '\2193'; /* Codice Unicode per la freccia in giù */
    opacity: 1;
}

/* Stili per la Media Library Frontend */

.qrcdr-media-card .card-img-top-wrapper {
    height: 120px; /* Altezza fissa per allineare le card */
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    background-color: #f8f9fa; /* Sfondo per icone o immagini piccole */
}

.qrcdr-media-card .card-img-top {
    width: auto;
    height: 100%;
    width: 100%;
    object-fit: cover; /* Assicura che le immagini coprano lo spazio senza distorcersi */
}

/* Stile specifico per le icone di file (es. PDF) */

.qrcdr-media-card .card-img-top[src*=".svg"],
.qrcdr-media-card .card-img-top[src*=".png"] { /* Adatta se le icone sono png */
    object-fit: contain; /* Non tagliare le icone */
    height: 60px; /* Riduci la dimensione dell'icona */
    width: 60px;
}

.qrcdr-wrapper img.qrcdr-img-thumbnail{
    max-width: none;
}

.qrcdr-img-thumbnail {
    opacity: 0;
    transition: opacity 0.4s ease-in-out;
}

.qrcdr-img-thumbnail.is-loaded {
    opacity: 1;
}

.qrcdr-maybe-visible{
    transition: opacity 0.2s ease-in-out !important;
}

.qrcdr-is-hidden {
    opacity: 0;
    pointer-events: none;
}

.qrcdr-wrapper .card{
    border-radius: 4px;
    border-color: transparent;
}

.qrcdr-truncate-text {
  display: block;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

/*
 * Applichiamo le variabili di base al contenitore principale,
 * come la larghezza massima e il raggio del bordo.
 * Usiamo 'body > .tooltip' per aumentare la specificità.
 */

/* 1. Stili Strutturali di Base */

/* 1. Stili Strutturali di Base (invariati) */

.tooltip.qrcdr-tooltip {
  position: absolute;
  z-index: 1080;
  display: block;
  margin: 0;
  font-family: var(--qrcdr-font-sans-serif);
  font-style: normal;
  font-weight: 400;
  line-height: 1.5;
  font-size: 0.875rem;
  word-wrap: break-word;
  opacity: 0;
}

.tooltip.qrcdr-tooltip.show { opacity: 0.95; }

.tooltip.qrcdr-tooltip.fade { transition: opacity 0.15s linear; }

.tooltip.qrcdr-tooltip .tooltip-arrow {
  position: absolute;
  display: block;
  width: 0.8rem;
  height: 0.4rem;
}

.tooltip.qrcdr-tooltip .tooltip-arrow::before {
  position: absolute;
  content: "";
  border-color: transparent;
  border-style: solid;
}

.tooltip.qrcdr-tooltip .tooltip-inner {
  max-width: 250px;
  padding: 0.5rem 0.8rem;
  color: #fff;
  text-align: center;
  background-color: #000;
  border-radius: 0.375rem;
}

/* Quando il tooltip è posizionato in ALTO */

.qrcdr-tooltip[data-popper-placement^="top"] .tooltip-arrow {
  bottom: -0.4rem; /* Sposta il contenitore della freccia sotto il tooltip */
}

.qrcdr-tooltip[data-popper-placement^="top"] .tooltip-arrow::before {
  /* top: 0; NON serve */
  border-width: 0.4rem 0.4rem 0;
  border-top-color: #000;
}

/* Quando il tooltip è posizionato a DESTRA */

.qrcdr-tooltip[data-popper-placement^="right"] .tooltip-arrow {
  left: -0.4rem; /* Sposta il contenitore a sinistra */
  width: 0.4rem;
  height: 0.8rem;
}

.qrcdr-tooltip[data-popper-placement^="right"] .tooltip-arrow::before {
  /* right: 0; NON serve */
  border-width: 0.4rem 0.4rem 0.4rem 0;
  border-right-color: #000;
}

/* Quando il tooltip è posizionato in BASSO */

.qrcdr-tooltip[data-popper-placement^="bottom"] .tooltip-arrow {
  top: -0.4rem; /* Sposta il contenitore sopra */
}

.qrcdr-tooltip[data-popper-placement^="bottom"] .tooltip-arrow::before {
  /* bottom: 0; NON serve */
  border-width: 0 0.4rem 0.4rem;
  border-bottom-color:  #000;
}

/* Quando il tooltip è posizionato a SINISTRA */

.qrcdr-tooltip[data-popper-placement^="left"] .tooltip-arrow {
  right: -0.4rem; /* Sposta il contenitore a destra */
  width: 0.4rem;
  height: 0.8rem;
}

.qrcdr-tooltip[data-popper-placement^="left"] .tooltip-arrow::before {
  /* left: 0; NON serve */
  border-width: 0.4rem 0 0.4rem 0.4rem;
  border-left-color: #000;
}

/* ===================================================================
   Stili per la Preview del Player MP3 nell'Editor
   =================================================================== */

.qrcdr-mp3-preview-wrap .qrcdr-screen {
    padding: 1rem;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #f0f2f5;
    position: relative;
}

.qrcdr-mp3-preview-wrap .qrcr-mp3-blurred {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-image: var(--qrcdr-mp3-image);
  filter: blur(20px); 
  background-position: center;
  background-size: cover;
  z-index: 0;
}

.qrcdr-player-card-preview {
    width: 100%;
    max-width: 380px;
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 4px 12px rgba(0,0,0,0.1);
    background-color: #f8f9fa;
    color: #1F1F1F;
    transition: background-color 0.3s;
    z-index: 2;
}

.qrcdr-cover-art-preview {
    width: 100%;
    aspect-ratio: 1 / 1;
}

.qrcdr-cover-art-preview img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.qrcdr-track-info-preview {
    padding: 1.5rem;
    text-align: center;
}

.qrcdr-track-info-preview h1 {
    font-size: 1.25rem;
    font-weight: 600;
    margin: 0 0 1rem;
    color: inherit;
    /*color: var(--qrcdr-text);*/
    min-height: 2rem;
}

.qrcdr-audio-player-preview-placeholder {
    padding: 1rem;
    border: 1px dashed #ced4da;
    border-radius: 8px;
}

/* Stili finali per l'anteprima della Business Card */

/* 1. Stile del "body" dell'anteprima (lo schermo del telefono) */

.qrcdr-screen {
    background-color: #f0f2f5; /* Sfondo grigio come nella landing */
    padding: 1rem 0.5rem; /* Aggiunge un po' di spazio per vedere lo sfondo */
    overflow-y: auto; /* Permette lo scroll se il contenuto è lungo */
    height: 100%;
}

/* 2. Stile del contenitore principale .qrcdr-bcard (equivalente di .card) */

.qrcdr-bcard {
    background-color: #fff;
    color: #333;
    border-radius: 16px;
    box-shadow: 0 4px 12px rgba(0,0,0,0.1);
    overflow: hidden;
    text-align: center;
    width: 100%;
}

/* 3. Stili per le parti interne (adattati dall'originale) */

.qrcdr-bcard-header {
    background-color: #f0f2f5;
    padding: 2.5rem 1rem;
}

.qrcdr-bcard-picture,
.qrcdr-profile-picture {
    width: 100px;
    height: 100px;
    border-radius: 50%;
    overflow: hidden;
    border: 4px solid #fff;
    box-shadow: 0 0.5rem 1rem rgba(0,0,0,0.08);
    position: relative;
    z-index: 2;
    background: #fff;
    margin: 1rem auto;
}

.qrcdr-bcard-picture{
    margin: -4rem auto 0;
}

.qrcdr-bcard-picture img,
.qrcdr-profile-picture img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.qrcdr-bcard-body {
    padding: 1rem;
}

.qrcdr-wrapper .qrcdr-bcard-name {
    font-size: 1.25rem;
    font-weight: 600;
    margin: 0;
}

.qrcdr-bcard-title {
    font-size: 0.9rem;
    margin: 0.25rem 0 1rem;
}

.qrcdr-bcard-actions {
    display: flex;
    justify-content: center;
    gap: 0.75rem;
    margin-bottom: 1rem;
}

.qrcdr-bcard-actions a,
.qrcdr-bcard-actions a:hover,
.qrcdr-bcard-actions a:active,
.qrcdr-bcard-actions a:focus {
    padding: 0.5rem 1rem;
    text-decoration: none;
    color: #fff;
    border-radius: 8px;
    font-weight: 500;
    font-size: 0.8rem;
    background: var(--qrcdr-primary);
    color: var(--qrcdr-text);
}

/*.qrcdr-bcard-links a {
    display: block;
    padding: 0.75rem;
    text-decoration: none;
    color: #212529;
    border-top: 1px solid #eee;
}
.qrcdr-bcard-links a:hover {
    background-color: #f8f9fa;
}*/

.qrcdr-bcard-footer {
    padding: 1rem;
    background-color: rgba(255,255,255,0.1);
}

.qrcdr-bcard-footer a ,
.qrcdr-bcard-footer a:hover{
    display: block;
    width: 100%;
    padding: 0.75rem;
    text-decoration: none;
    color: #fff;
    border-radius: 8px;
    font-weight: 600;
    font-size: 1rem;
    background: var(--qrcdr-primary);
    color: var(--qrcdr-text);
}

.qrcdr-ui-btn,
.qrcdr-ui-btn:hover,
.qrcdr-ui-btn:active,
.qrcdr-ui-btn:focus {
    display: flex;
    padding: 0.75rem;
    text-decoration: none;
    color: #fff;
    border-radius: 8px;
    font-weight: 600;
    font-size: 1rem;
    background: var(--qrcdr-primary);
    color: var(--qrcdr-text); 
    justify-content: center;
    align-items: center;
}

/* Stile per la pricing table moderna */

.qrcdr-pricing-table .card {
    transition: all 0.3s ease;
    position: relative;
    overflow: hidden; /* Necessario per il posizionamento del badge */
}

.qrcdr-pricing-table .card:hover {
    transform: translateY(-5px);
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;
}

.qrcdr-pricing-table .recommended-plan {
    border-color: var(--qrcdr-primary) !important;
    border-width: 2px !important;
}

.qrcdr-gallery-preview-wrapper{
    width: 100%;
    display: flex;
    flex-direction: column;
}

.qrcdr-gallery-swiper-preview-wrapper{
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 100%;
}

.qrcdr-gallery-swiper-preview{
    flex-grow: 1;
}

.qrcdr-gallery-swiper-preview .swiper-slide {
    display: flex;
    align-items: center;
    justify-content: center;
}

.qrcdr-gallery-swiper-preview .swiper-slide img{
    border-radius: 6px;
}

.qrcdr-gallery-preview-wrap{
    --swiper-theme-color: var(--qrcdr-primary);
}

/* Contenitore principale delle miniature */

.qrcdr-swiper-thumbs .swiper-slide {
  /* Opacità per indicare lo stato attivo/inattivo */
  opacity: 0.5;
  transition: opacity 0.3s ease;
  cursor: pointer;
}

/* La slide attiva è completamente opaca */

.qrcdr-swiper-thumbs .swiper-slide-thumb-active {
  opacity: 1;
}

/* Il "box magico" per il rapporto d'aspetto */

.qrcdr-thumb-aspect-ratio-box {
  position: relative;
  width: 100%;
  padding-bottom: 100%; /* Questo crea un'altezza pari al 100% della larghezza -> Quadrato */
  overflow: hidden;
  border-radius: 4px; /* Angoli arrotondati per un look più moderno */
}

/* L'immagine all'interno del box */

.qrcdr-thumb-aspect-ratio-box img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover; /* Riempie il contenitore croppando l'eccesso */
  object-position: center; /* Centra l'immagine prima di croppare */
}

.qrcdr-preview-title-wrapper{
    background: rgba(255,255,255,0.1);
    border-radius: 50rem;
    text-align: center;
    margin-bottom: 1rem;
    display: inline-block;
    opacity: 0.9;
}

.qrcdr-preview-title {
  padding: 10px 15px;
  text-align: center;
  
  /* Stili replicati dalla pagina pubblica per coerenza */
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", sans-serif;
  font-size: 1rem; /* Leggermente più piccolo per adattarsi alla preview */
  font-weight: 300;
  letter-spacing: 0.5px;  
  /* Per la gestione del testo troppo lungo */
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.sortable-ghost {
    opacity: 0.9;
    background-color: #CCE8E7;
    border-color: #CCE8E7;
}

.sortable-ghost .qrcdr-gallery-item-thumb {
    opacity: 0.4;
}

.qrcdr-gallery-images-list {
    display: flex;
    flex-wrap: wrap;
    gap: 15px;
    justify-content: flex-start; 
}

/* Stile per ogni singolo elemento della griglia */

.qrcdr-gallery-item {
    flex: 0 1 30%;
    max-width: 160px;
    position: relative;
    cursor: move;
}

/* Wrapper interno per gestire l'aspect-ratio */

.qrcdr-gallery-item-inner {
    position: relative;
    width: 100%;
    padding-top: 100%;
}

.qrcdr-gallery-item:hover .qrcdr-gallery-item-inner {
    box-shadow: 0 4px 8px rgba(0,0,0,0.1);
    border-color: #ccc;
}

/* Stile per l'immagine di anteprima */

.qrcdr-gallery-item-thumb {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* Stile per il bottone di rimozione */

.qrcdr-remove-gallery-item {
    position: absolute;
    top: -5px;
    right: -5px;
    z-index: 10;
    opacity: 1;
    transform: scale(1);
    border-radius: 50% !important;
    box-shadow: 0 1px 3px rgba(0,0,0,0.3);
    width: 24px;
    height: 24px;
    padding: 0 !important;
    line-height: 24px;
    transition: transform 0.2s ease, background-color 0.2s ease;
}

/* Stati di caricamento ed errore (adattati al nuovo layout) */

.qrcdr-gallery-item.is-loading .qrcdr-gallery-item-inner {
    animation: qrcdr-pulse-bg 1.5s infinite;
}

.qrcdr-gallery-item.has-error .qrcdr-gallery-item-thumb {
    object-fit: contain;
    padding: 15%;
}

@keyframes qrcdr-pulse-bg {
    0% { background-color: #f0f0f0; }
    50% { background-color: #e0e0e0; }
    100% { background-color: #f0f0f0; }
}

.os-chart-container, 
.browser-chart-container{
    width: 100%;
    max-width: 250px;
    margin: 0 auto;
}

.qrcdr-social-button{
    box-shadow: 0 4px 6px rgba(0,0,0,0.04);
}

.qrcdr-wrapper textarea{
    resize: none;
}
/*# sourceMappingURL=style.css.map */