# Polityka cookies

Jakich cookies i pamięci lokalnej używa Struvo i po co.

Ten dokument zawiera pola, które przed publikacją należy uzupełnić danymi operatora. Skonfiguruj produkcyjny build zmiennymi `VITE_LEGAL_*`.Widoczne tylko do skonfigurowania tożsamości prawnej.

# Polityka Plików Cookies i Pamięci Przeglądarki (Cookie & Local Storage Policy)

**Wersja:** 1.0  
**Data wejścia w życie:** [UZUPEŁNIJ DATĘ, NP. 1 PAŹDZIERNIKA 2026 R.]  
**Ostatnia aktualizacja:** [UZUPEŁNIJ DATĘ]

---

## 1. Informacje Wstępne

1.1. Niniejsza Polityka dotyczy wykorzystywania plików cookies, pamięci lokalnej (**Local Storage**) oraz pamięci sesyjnej (**Session Storage**) w serwisie internetowym oraz aplikacji webowej **Struvo** dostępnej pod adresem `struvo.pl` oraz w powiązanych subdomenach.  
1.2. Administratorem serwisu jest **[NAZWA SPÓŁKI / IMIĘ I NAZWISKO]** z siedzibą w: **[ADRES SIEDZIBY]**, NIP: **[NUMER NIP]**, e-mail: `privacy@struvo.pl`.  
1.3. Polityka realizuje obowiązki informacyjne wynikające z art. 173 ustawy z dnia 16 lipca 2004 r. – Prawo telekomunikacyjne (oraz odpowiadających przepisów Europejskiego Kodeksu Łączności Elektronicznej i dyrektywy ePrivacy 2002/58/WE) oraz RODO.

---

## 2. Czym Są Pliki Cookies i Mechanizmy Pamięci Przeglądarki?

2.1. **Pliki cookies (ciasteczka)** – małe pliki tekstowe wysyłane przez serwer www i zapisywane w pamięci urządzenia końcowego użytkownika (komputer, smartfon), umożliwiające m.in. utrzymanie aktywnej sesji użytkownika.  
2.2. **Local Storage i Session Storage (HTML5 Web Storage)** – nowoczesne mechanizmy pamięci przeglądarki umożliwiające bezpieczne przechowywanie danych po stronie klienta (urządzenia). Dane w Session Storage są automatycznie usuwane po zamknięciu karty lub okna przeglądarki, natomiast dane w Local Storage pozostają w pamięci do momentu ich usunięcia przez aplikację (np. przy wylogowaniu) lub ręcznego wyczyszczenia przez użytkownika.

---

## 3. Brak Zewnętrznych Skryptów Śledzących i Marketingowych

3.1. Usługodawca oświadcza, że w kodzie aplikacji Struvo **nie są instalowane ani uruchamiane żadne zewnętrzne skrypty śledzące o charakterze marketingowym, behawioralnym ani reklamowym** (np. Google Analytics, Meta/Facebook Pixel, TikTok Pixel, Hotjar czy sieci afiliacyjne).  
3.2. Wszelkie wykorzystywane mechanizmy zapisu danych mają charakter **ściśle techniczny (niezbędny)** lub **funkcjonalny**, służący wyłącznie prawidłowemu działaniu platformy, bezpieczeństwu sesji oraz zachowaniu preferencji interfejsu.

---

## 4. Wykaz Stosowanych Mechanizmów Pamięci Przeglądarki

W ramach działania aplikacji webowej Struvo po stronie przeglądarki zapisywane są następujące klucze pamięci lokalnej:

### A. Mechanizmy Ściśle Niezbędne (Techniczne / Uwierzytelnianie)
Mechanizmy te są absolutnie konieczne do korzystania z panelu aplikacji i nie mogą zostać wyłączone bez utraty możliwości zalogowania się i obsługi serwisu:

| Klucz / Nazwa | Typ pamięci | Cel i zawartość | Czas przechowywania |
| :--- | :--- | :--- | :--- |
| `tyb_access` | Local Storage | Zaszyfrowany token dostępowy JWT (*JSON Web Token*) autoryzujący zapytania API do serwera backendowego | Do czasu wygaśnięcia sesji / wylogowania |
| `tyb_refresh` | Local Storage | Token odświeżający sesję OIDC, umożliwiający automatyczne odnowienie tokenu dostępowego bez przerywania pracy | Do czasu wylogowania lub unieważnienia sesji w Keycloak |
| `tyb_id` | Local Storage | Identyfikator tożsamości OIDC z informacjami o zalogowanym użytkowniku | Do czasu wylogowania |
| `tyb_user` | Local Storage | Podstawowe dane kontekstowe sesji użytkownika w formacie JSON (`userId`, `companyId`, `roles`) | Do momentu wylogowania |
| `tyb_state` | Local Storage | Losowy parametr kryptograficzny protokołu OAuth2/PKCE zapobiegający atakom Cross-Site Request Forgery (CSRF) | Krótkotrwały – usuwany po zakończeniu logowania |
| `tyb_code_verifier` | Local Storage | Kryptograficzny weryfikator kodu w protokole PKCE chroniący wymianę tokenów | Krótkotrwały – usuwany po zakończeniu logowania |
| `tyb_session_redirect` | Session Storage | Znacznik techniczny obsługujący przekierowanie użytkownika na stronę logowania po wygaśnięciu sesji | Czas trwania sesji karty przeglądarki |
| `KEYCLOAK_*` / `AUTH_SESSION_ID` | Ciasteczko HTTP (First-Party) | Ciasteczka sesyjne serwera tożsamości Keycloak, zabezpieczone flagami `HttpOnly`, `Secure` i `SameSite` | Czas trwania sesji logowania SSO |

### B. Mechanizmy Funkcjonalne (Preferencje Użytkownika)
Ułatwiają korzystanie z platformy, zapamiętując indywidualne wybory estetyczne i językowe:

| Klucz / Nazwa | Typ pamięci | Cel i zawartość | Czas przechowywania |
| :--- | :--- | :--- | :--- |
| `tyb_theme` | Local Storage | Wybrany motyw graficzny interfejsu (jasny / ciemny / systemowy) | Do momentu zmiany lub wyczyszczenia danych |
| `tyb_locale` | Local Storage | Wybrany język interfejsu (np. `pl`, `en`, `de`, `es`, `no`, `is`) | Do momentu zmiany preferencji |
| `tyb_photo_export` | Local Storage | Identyfikator trwającego w tle procesu generowania archiwum ZIP ze zdjęciami projektu | Do czasu zakończenia pobierania eksportu |

---

## 5. Podstawa Prawna i Zarządzanie Pamięcią Przeglądarki

5.1. **Zgoda i Wyłączenia**:  
Zgodnie z art. 173 ust. 3 Prawa telekomunikacyjnego oraz art. 5 ust. 3 dyrektywy ePrivacy, wymóg uzyskania uprzedniej zgody użytkownika nie ma zastosowania, jeżeli przechowywanie informacji lub dostęp do nich jest **niezbędne do świadczenia usługi telekomunikacyjnej lub usługi świadczonej drogą elektroniczną wyraźnie zażądanej przez abonenta lub użytkownika** (mechanizmy ściśle techniczne i funkcjonalne).  
5.2. **Możliwość Wyczyszczenia Danych**:  
Użytkownik może w każdej chwili samodzielnie usunąć zapisane pliki cookies oraz dane z Local Storage za pomocą ustawień swojej przeglądarki internetowej:
- **Google Chrome:** Ustawienia -> Prywatność i bezpieczeństwo -> Usuń dane przeglądania.
- **Mozilla Firefox:** Opcje -> Prywatność i bezpieczeństwo -> Ciasteczka i dane stron -> Wyczyść dane.
- **Apple Safari:** Preferencje -> Prywatność -> Zarządzaj danymi witryn.
- **Microsoft Edge:** Ustawienia -> Pliki cookie i uprawnienia witryny -> Zarządzaj i usuwaj pliki cookie.  
*Uwaga:* Wyczyszczenie pamięci Local Storage skutkuje natychmiastowym wylogowaniem z platformy Struvo oraz przywróceniem domyślnych ustawień wyglądu i języka.

---

## 6. Zmiany Polityki i Klauzula Językowa

6.1. W przypadku wdrożenia nowych funkcji wymagających rozszerzenia zakresu przechowywanych danych, niniejsza Polityka zostanie zaktualizowana.  
6.2. Niniejszy dokument został sporządzony w języku polskim. W przypadku ewentualnych rozbieżności pomiędzy wersją polską a tłumaczeniami na inne języki, **wersja w języku polskim jest wiążąca**.

