In this article, you will learn how to override and use CSS variable values to easily customize widgets in Lockme.

    Overwriting CSS variable values for widgets

    Below you will find step-by-step instructions on how to overwrite CSS variable values in Lockme. If you don't feel confident with CSS, it's worth reading the further sections, which offer practical tips and examples.

    1. To enter variable values, go to the Lockme company panel, then go to edit departments.image
    2. In the "Widget settings" tab, there is a field called "Additional CSS styles", where you can override the values described below.image

    How do CSS variables work?

    Overriding the values of CSS variables in widgets allows you to customize them quickly and intuitively. All variables are in one place, and their values can be changed easily, making personalization much easier.

    Each CSS variable has the construct:

    --nazwa-zmiennej: wartość;
    

    It is important that variables are overridden inside the .calwidget class, between curly brackets. Each line with a variable must also end with a semicolon. As in the example:

    .calwidget {
      --widget-color-main: deeppink;
    }
    

    Full list of variables

    .calwidget {
      --hover-color: var(--widget-color-main);
    
      // GENERAL
      --widget-color-main: var(--primary);
      --widget-color-main-alt: var(--primary_light);
      --widget-color-background: var(--background);
      --widget-color-background-alt: var(--background_dark);
      --widget-color-text: var(--text);
      --widget-color-text-on-main: black;
      --loading-icon-color: var(--widget-color-main);
      --widget-border-radius: var(--radius);
    
      // NAVIGATION
      --navigation-color-background: transparent;
      --navigation-color-text: var(--widget-color-text);
      --navigation-color-icon: --navigation-color-text;
      --navigation-color-inactive-link: var(--secondary_dark);
      --navigation-color-inactive-icon: var(--navigation-color-inactive-icon);
      --navigation-color-border: var(--tertiary_light);
      --navigation-border-width: 2px;
      --navigation-border-radius: 0;
    
      // MESSAGES
      --message-custom-color-neutral-background: var(--widget-color-main);
      --message-custom-color-neutral-text: var(--widget-color-text-on-main);
      --message-custom-color-error-background: var(--red);
      --message-custom-color-error-text: white;
      --message-custom-color-success-background: var(--form_valid);
      --message-custom-color-success-text: white;
    
      // DAYS
      --special-offer-mark-color-background: var(--widget-color-main);
      --special-offer-mark-color-text: var(--widget-color-text);
    
      --active-day-color-background: var(--widget-color-text);
      --active-day-color-text: var(--widget-color-background);
    
      // HOUR SLOT
      --slot-color-background: var(--widget-color-background);
      --slot-color-text: var(--widget-color-text);
      --slot-color-border: var(--slot-color-text);
      --slot-color-background-hover: var(--widget-color-main-alt);
      --slot-color-border-hover: var(--slot-color-border);
    
      --slot-booked-color-background: transparent;
      --slot-booked-color-border: var(--widget-color-text);
      --slot-booked-opacity: 0.3;
    
      --slot-border-radius: var(--widget-border-radius);
      --slot-border-width: 1px;
    
      // FORMS
      --widget-form-section-color-text: var(--widget-color-text);
      --widget-form-section-color-label: var(--widget-form-section-color-text);
      --widget-form-section-color-icons: var(--widget-form-section-color-label);
    
      --widget-form-color-border: var(--secondary);
      --widget-form-color-background: var(--background);
      --widget-form-color-label: var(--widget-color-text);
      --widget-form-color-placeholder: var(--form-color-placeholder);
    
      --widget-form-focus-color-border: var(--widget-color-text);
      --widget-form-focus-color-background: var(--widget-form-color-background);
      --widget-form-focus-color-label: var(--widget-color-main);
      --widget-form-focus-color-placeholder: var(--form-color-placeholder);
    
      --widget-form-hover-color-border: var(--widget-form-color-border);
      --widget-form-hover-color-background: var(--widget-form-color-background);
      --widget-form-hover-color-label: var(--widget-form-color-label);
      --widget-form-hover-color-placeholder: var(--widget-form-color-placeholder);
    
      --widget-form-border-width: 5px;
      --widget-form-border-radius: var(--widget-border-radius);
    
      // SIDE BUTTONS
      --side-button-color-background: var(--widget-color-background-alt);
      --side-button-color-background-hover: var(--secondary);
      --side-button-color-text: var(--widget-color-text);
    
      --side-button-color-inactive-text: var(--secondary_dark);
      --side-button-color-inactive-background: var(--widget-color-background-alt);
      --side-button-height: 90px;
      --side-button-font-size: 2.985984rem;
      --side-button-border-radius: var(--widget-border-radius);
    
      // BOTTOM BUTTONS
      --widget-button-border-width: 1px;
      --widget-button-border-radius: var(--widget-border-radius);
    
      --widget-button-book-color-background: var(--widget-color-main);
      --widget-button-book-color-text: var(--widget-color-text-on-main);
      --widget-button-book-color-icon: var(--widget-color-text-on-main);
      --widget-button-book-color-border: var(--widget-color-main);
    
      --widget-button-book-hover-color-background: var(--widget-color-text-on-main);
      --widget-button-book-hover-color-text: var(--widget-color-main);
      --widget-button-book-hover-color-icon: var(--widget-color-main);
      --widget-button-book-hover-color-border: var(--widget-color-main);
    
      --widget-button-back-color-background: var(--widget-color-background);
      --widget-button-back-color-text: var(--widget-color-text);
      --widget-button-back-color-icon: var(--widget-button-secondary-color-text);
      --widget-button-back-color-border: var(--secondary);
    
      --widget-button-back-hover-color-background: var(--widget-color-background-alt);
      --widget-button-back-hover-color-text: var(--widget-button-back-color-text);
      --widget-button-back-hover-color-icon: var(--widget-button-back-color-icon);
      --widget-button-back-hover-color-border: var(--widget-button-back-color-border);
    }
    

    Examples of use

    Below are practical examples of using CSS variables in widgets:

    Changing accent color

    .calwidget {
      --widget-color-main: deeppink;
    }
    

    image

    Change text color

    .calwidget {
      --widget-color-text: deeppink;
    }
    

    image

    Customizing slot frames

    .calwidget {
      --widget-color-text: deeppink;
      --slot-color-border: dodgerblue;
    }
    

    image

    Create unique styling

    .calwidget {
      --widget-color-text: deeppink;
      --slot-color-border: dodgerblue;
      --slot-color-background: gold;
      --slot-color-text: green;
      --slot-border-radius: 20px;
      --slot-border-width: 4px;
    }
    

    image

    Important notes

    Variables are mainly used to modify colors and dimensions. Advanced changes may require the use of more complex CSS selectors. Variables were created to simplify the styling process and minimize the need to write complex code.

    Need help?

    Write to [email protected].

    Ahoj, naše webové stránky používají soubory cookie, aby mohly správně fungovat všechny jejich funkce.

    Kromě těchto nezbytných souborů používáme také soubory cookie třetích stran, abychom mohli používat analytické, sociální a marketingové nástroje třetích stran. To znamená, že údaje shromážděné jejich prostřednictvím zpracovávají také poskytovatelé těchto nástrojů.

    Souhlasíte s používáním jiných souborů cookie než těch, které jsou nezbytné pro provoz stránek, jak je popsáno v našich zásadách ochrany osobních údajů?

    Nastavení souborů cookie

    Zde můžete změnit podrobné nastavení souborů cookie používaných na našich stránkách. Pokud souhlasíte s konkrétním typem souborů cookie, znamená to, že souhlasíte s tím, aby údaje jimi shromážděné byly použity správcem těchto stránek a poskytovatelem konkrétního nástroje, který používáme - jak je popsáno v našich zásadách ochrany osobních údajů.

    Tento typ souborů je nezbytný pro správné fungování našich stránek. Používají se mimo jiné pro funkce, jako je zapamatování si vybrané země uživatele, produktů v nákupním košíku nebo barevného motivu webu.

    Tyto soubory nám umožňují pochopit, jak uživatelé procházejí našimi stránkami. Jedním z takových nástrojů je Google Analytics, který nám umožňuje shromažďovat anonymní informace o počtu návštěv, používání konkrétních funkcí nebo typu uživatelských zařízení. Díky nim jsme schopni přizpůsobit stránky potřebám a možnostem různorodých uživatelů.

    Nástroje společností Google, Facebook a Seznam.cz, které shromažďují informace o uživatelích, které můžeme využít pro marketingové účely.