   body {
            font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
            background: #f3f4f6;
            margin: 0;
        }
        .wrapper {
            min-height: 90vh;
            display: flex;
            align-items: center;
            justify-content: center;
            padding: 20px;
        }
        .card {
            background: #ffffff;
            padding: 24px 28px;
            border-radius: 12px;
            box-shadow: 0 10px 25px rgba(15, 23, 42, 0.12);
            max-width: 640px;
            width: 100%;
        }
        h1 {
            margin: 0 0 10px;
            font-size: 1.5rem;
            color: #111827;
        }
        h2 {
            margin: 0 0 10px;
            font-size: 1.0rem;
            color: #2563eb;
        }
        p.description {
            margin: 0 0 20px;
            color: #6b7280;
            font-size: 0.95rem;
        }
        .form-row {
            display: flex;
            gap: 12px;
        }
        .form-group {
            margin-bottom: 16px;
            width: 100%;
        }
        label {
            display: block;
            margin-bottom: 6px;
            font-weight: 600;
            color: #374151;
            font-size: 0.9rem;
        }
        input[type="text"],
        input[type="email"],
        input[type="tel"],
        input[type="number"] {
            width: 100%;
            padding: 9px 11px;
            border-radius: 8px;
            border: 1px solid #d1d5db;
            font-size: 0.95rem;
            transition: border-color 0.15s ease, box-shadow 0.15s ease;
            box-sizing: border-box;
        }
        input:focus {
            outline: none;
            border-color: #2563eb;
            box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.2);
        }
        .checkbox-group {
            display: flex;
            align-items: flex-start;
            gap: 8px;
            font-size: 0.9rem;
            color: #4b5563;
        }
        .checkbox-group input {
            margin-top: 3px;
        }
        button {
            margin-top: 6px;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            padding: 10px 18px;
            border-radius: 999px;
            border: none;
            background: linear-gradient(135deg, #2563eb, #1d4ed8);
            color: #ffffff;
            font-weight: 600;
            font-size: 0.95rem;
            cursor: pointer;
            transition: transform 0.1s ease, box-shadow 0.1s ease, background 0.15s ease;
            box-shadow: 0 8px 18px rgba(37, 99, 235, 0.35);
        }
        button:hover {
            transform: translateY(-1px);
            box-shadow: 0 10px 22px rgba(37, 99, 235, 0.45);
        }
        button:active {
            transform: translateY(0);
            box-shadow: 0 6px 14px rgba(37, 99, 235, 0.35);
        }
        .alert {
            padding: 10px 12px;
            border-radius: 8px;
            font-size: 0.9rem;
            margin-bottom: 16px;
        }
        .alert-success {
            background: #ecfdf3;
            color: #166534;
            border: 1px solid #bbf7d0;
        }
        .alert-error {
            background: #fef2f2;
            color: #b91c1c;
            border: 1px solid #fecaca;
        }
        .alert-error ul {
            margin: 0;
            padding-left: 18px;
        }
        button.disabled { background: #d1d5db; /* světle šedá */ color: #6b7280; /* tmavší šedá pro text */ cursor: not-allowed; /* typický kurzor pro disabled */ box-shadow: none; /* žádný stín */ border: 1px solid #c5c5c5; opacity: 0.7; /* lehké zesvětlení */ }
        #counter_text_occupated { color: red; }
        .div_visible { display: block; }
        .div_invisible { display: none; }
